In this jsBin,我想为['Colorado', 'South Dakota']
属性声明性地预加载元素selected
。
When I open this jsBin,我希望看到以下内容:
successfully一个成功加载的页面。
✅美国的轮廓图
✅在左上方的读数selected
中打印Colorado,South Dakota
变量。
Colorado科罗拉多州和南达科他州已预先选择,颜色为蓝色。
the控制台中没有错误。
相反,我实际上看到以下内容:
successfully一个成功加载的页面。
✅美国的轮廓图
✅在左上方的读数selected
中打印Colorado,South Dakota
变量。
Colorado未预先选择科罗拉多州和南达科他州或蓝色。
console以下控制台错误:
控制台错误
google is not defined
题
如何获得要在关键位置定义的google
的值?
我已经隔离了问题down to the following lines of code。
http://jsbin.com/zomejajibe/1/edit?html,控制台,输出
_drawChart: function() {
console.log('A'); // Successfully logs to console
// The key is to get "google" defined at the following line
var dataTable = this.$.geochart._createDataTable(this.items); // "google" is not defined???
console.log('dataTable: '); // Does not successfully log because crashes above
console.log(dataTable);
this.$.geochart._chartObject.draw(dataTable, this.$.geochart.options);
},
最佳答案
因此,您有一个问题,即在元素就绪之前,选择更改触发了触发器。
我在函数_selectedChanged上添加了10毫秒的超时,因此它将超时推送到事件循环的结尾。您可以将其更改为0毫秒。
看http://jsbin.com/quzuyuwaha/1/edit?html,console,output