你能告诉我如何在打开页面时重新加载一个铁ajax吗?例如:我有页面/新闻。当我点击这个页面时,我打开了元素:
<dom-module id="my-news">
<template id="app">
<iron-ajax id="ajax_list"
auto
url="http://--------------/books"
last-response="{{data}}"
handleAs="json"
on-response="handleResponse">
</iron-ajax>
<iron-list id="news_list" items="[[data]]">
<template >
<paper-item on-tap="open_news">[[item.name]] </paper-item>
</template>
</iron-list>
</template>
<script>
Polymer({
is: 'my-news',
},
....
</script>
如果此时添加新闻,则列表未更新。只有当我按F5和铁ajax将再次工作时,它才会更新。我创建了一个这样的函数:
ready: function(){
var _this_ = this;
function(){this.ajax_list.generateRequest();}, 5000)
}
但这不是exit
为了工作,您的函数需要获得iron-ajax
实例,为此您需要使用this.$
而不是this
。您还需要将函数与bind(this)
绑定,以便将元素实例传递给回调。
像这样:
ready: function(){
var _this_ = this;
function(){ this.$.ajax_list.generateRequest() }.bind(this), 5000)
},