0

通常谷歌图表库加载如下,它工作正常:

google.load('visualization', '1', {packages: ['corechart']});

var data = new google.visualization.arrayToDataTable(v);
var chart = new google.visualization.LineChart(elm[0]);
chart.draw(data, options);

现在我想切换到核心图表的冻结版本。文档说明这是按如下方式完成的:

google.charts.load('41', {packages: ['corechart']});

@see https://developers.google.com/chart/interactive/docs/library_loading_enhancements

问题:使用这个,我得到了google.visualization未定义的javascript错误。

那么,我该如何加载冻结版本?

4

2 回答 2

1

问题不在于加载,问题在于您访问google.visualization.

文档声明您应该为google.charts.setOnLoadCallback创建图表的位置提供回调,但您没有。

当您正常加载库时,似乎脚本将同步加载(通过document.write),但是当您加载冻结版本时,脚本将异步加载(通过appendChild),这就是您尝试失败的原因(脚本尚未完全加载时你尝试访问google.visualization

于 2015-10-22T09:57:52.870 回答
0

您是否更改了脚本标签的来源?

<script type="text/javascript" 
    src="https://www.google.com/jsapi"></script>

<script type="text/javascript" 
    src="https://www.gstatic.com/charts/loader.js"></script>
于 2015-10-22T09:10:20.130 回答