通常谷歌图表库加载如下,工作正常:
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);
现在我想切换到 corecharts 的卡住版本。文档声明这将按如下方式完成:
google.charts.load('41', {packages: ['corechart']});
@参见https://developers.google.com/chart/interactive/docs/library_loading_enhancements
问题:
使用此方法,我在 javascript 中收到 google.visualization
未定义的错误。
那么,我该如何加载卡住版本?
最佳答案
问题不在于加载,问题在于您访问 google.visualization
的那一刻。
文档规定您应该为创建图表的 google.charts.setOnLoadCallback
提供回调,但您没有这样做。
当您正常加载库时,脚本似乎将同步加载(通过 document.write
),但是当您加载卡住版本时,脚本将异步加载(通过 appendChild
),这就是您的尝试失败的原因(当您尝试访问 google.visualization
时,脚本尚未完全加载)
关于javascript - 如何使用卡住库加载谷歌图表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33276134/