Javascript错误TypeError:无法读取未定义的属性“0”

Javascript错误TypeError:无法读取未定义的属性“0”,javascript,google-visualization,Javascript,Google Visualization,我正在尝试使用Google可视化API绘制图表,将API的加载延迟到需要使用可视化的时候 延迟工作正常,回调也工作正常,但我无法将数据参数放入其中,出现以下错误 是否在head元素存在之前包含脚本?@TinyGiant用户保存数据以创建图表时,我正在添加脚本。如何在waitForGVisAndLoad中的函数调用中提供fn和参数?我假设您无法读取[0]个“params”,因为它没有定义。 addGoogleChartScript: function () { var scr

我正在尝试使用Google可视化API绘制图表,将API的加载延迟到需要使用可视化的时候

延迟工作正常,回调也工作正常,但我无法将数据参数放入其中,出现以下错误


是否在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)
    }
  },