Javascript错误TypeError:无法读取未定义的属性“0”
我正在尝试使用Google可视化API绘制图表,将API的加载延迟到需要使用可视化的时候 延迟工作正常,回调也工作正常,但我无法将数据参数放入其中,出现以下错误Javascript错误TypeError:无法读取未定义的属性“0”,javascript,google-visualization,Javascript,Google Visualization,我正在尝试使用Google可视化API绘制图表,将API的加载延迟到需要使用可视化的时候 延迟工作正常,回调也工作正常,但我无法将数据参数放入其中,出现以下错误 是否在head元素存在之前包含脚本?@TinyGiant用户保存数据以创建图表时,我正在添加脚本。如何在waitForGVisAndLoad中的函数调用中提供fn和参数?我假设您无法读取[0]个“params”,因为它没有定义。 addGoogleChartScript: function () { var scr
是否在head元素存在之前包含脚本?@TinyGiant用户保存数据以创建图表时,我正在添加脚本。如何在waitForGVisAndLoad中的函数调用中提供fn和参数?我假设您无法读取[0]个“params”,因为它没有定义。
addGoogleChartScript: function () {
var script = document.createElement("script");
script.src = "http://www.google.com/jsapi?callback=superlist.loadGoogleChart";
script.type = "text/javascript";
document.getElementsByTagName("head")[0].appendChild(script);
},
loadGoogleChart: function () {
google.load("visualization", "1", {"callback" : superlist.waitForGVisAndLoad, 'packages':['corechart']});
},
waitForGVisAndLoad: function (fn, params) {
try {
var data = params[0];
var text = 'Waiting for Google API to display chart...';
var h1 = $s('#suplist_item_' + data.id + ' h1');
if (google && google.visualization && typeof google.visualization.arrayToDataTable == 'function') {
if (h1.innerHTML == text) h1.innerHTML = h1.getAttribute('prev');
fn.apply(null, params);
}
else {
if (h1.innerHTML != text) {
h1.setAttribute('prev', h1.innerHTML.toString());
h1.innerHTML = text;
}
setTimeout(superlist.waitForGVisAndLoad.bind(null, fn, params), 500);
}
}
catch (e) {
console.error(e)
}
},