在 Polymer 回调函数中访问 div
Access div within Polymer callback function
我有一个基本的 Polymer 应用程序设置(抽屉中有 3 个视图的示例应用程序之一)。我正在尝试在每个视图中动态显示 Google 图表。我在 Polymer ready() 函数中加载 google 个图表,并在 setOnLoadCallback 上传入一个函数。在回调函数中,我尝试创建图表并将其添加到 div,但找不到 div。谁能告诉我我做错了什么?
<div id="chart_div" style="width: 900px; height: 500px"></div>
<script>
Polymer({
is: 'my-view1',
ready: function() {
console.log('Polymer ready');
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(this.drawBasic);
},
drawBasic : function() {
console.log('preparing to create chart');
var chart_div = this.$.chart_div;
console.log(chart_div);
}
});
</script>
我认为你的错误在这里:
google.charts.setOnLoadCallback(this.drawBasic)
解决此问题的一种方法是使用 bind
方法。 Here 您可以找到有关该方法的文档。所以,我想这会起作用:
google.charts.setOnLoadCallback(this.drawBasic.bind(this))
我有一个基本的 Polymer 应用程序设置(抽屉中有 3 个视图的示例应用程序之一)。我正在尝试在每个视图中动态显示 Google 图表。我在 Polymer ready() 函数中加载 google 个图表,并在 setOnLoadCallback 上传入一个函数。在回调函数中,我尝试创建图表并将其添加到 div,但找不到 div。谁能告诉我我做错了什么?
<div id="chart_div" style="width: 900px; height: 500px"></div>
<script>
Polymer({
is: 'my-view1',
ready: function() {
console.log('Polymer ready');
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(this.drawBasic);
},
drawBasic : function() {
console.log('preparing to create chart');
var chart_div = this.$.chart_div;
console.log(chart_div);
}
});
</script>
我认为你的错误在这里:
google.charts.setOnLoadCallback(this.drawBasic)
解决此问题的一种方法是使用 bind
方法。 Here 您可以找到有关该方法的文档。所以,我想这会起作用:
google.charts.setOnLoadCallback(this.drawBasic.bind(this))