如何加载谷歌图表与冻结库
How to load google charts with frozen library?
通常情况下,google charts库是按如下方式加载的,运行良好:
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
问题:使用这个,我在javascript中得到google.visualization
未定义的错误。
那么,我要如何加载冻结版本呢?
问题不在于加载,而在于您访问google.visualization
的时刻。
文档说明您应该为创建图表的google.charts.setOnLoadCallback
提供回调,但您没有。
当您正常加载库时,似乎脚本将同步加载(通过document.write
),但是当您加载冻结版本时,脚本将异步加载(通过appendChild
),这就是为什么您的尝试失败(当您尝试访问google.visualization
时脚本尚未完全加载)
是否更改了脚本标签的来源?
<script type="text/javascript"
src="https://www.google.com/jsapi"></script>
<script type="text/javascript"
src="https://www.gstatic.com/charts/loader.js"></script>
相关文章:
- 谷歌地图固定位置覆盖
- 不显示带有本地json文件数据的谷歌地图脚本
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 谷歌放置API:按国家或餐馆名称搜索餐馆
- 谷歌地图标记不会显示
- 无法在JS中显示谷歌地图
- 科尔多瓦页面类应用程序中的多个谷歌地图
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 需要帮助谷歌地图方向面板在FancyBox中显示
- 在谷歌地图上获取事件的x,y坐标
- 使用谷歌应用程序脚本从工作表中获取值并将其显示在文本框中
- 谷歌地图API v3不适用于移动浏览器或PhoneGap
- 模拟谷歌地图中的点击
- 谷歌文档表面引擎
- 如何知道哪个标记被谷歌地图点击了
- 如何加载谷歌图表与冻结库
- 谷歌图表冻结后点击标签,如何使用'选择'Listener in 'ready'正确的侦听
- JQUERY/JavaScript -故障代码导致谷歌浏览器冻结
- 谷歌登录无法点击,冻结在登录手机只
- 谷歌地图在放大/缩小时冻结