我试图在Ember中创建一个组件,显示帖子有多少条评论。我从API中提取评论。现在的问题是,如果有新评论,它不会重新查询API。
有没有办法让Ember组件每隔15秒左右自动检查新评论以更新计数?
答案 0 :(得分:3)
可以在 init 钩子中调用一个触发新注释的方法,并在15秒后自行调用。
commentsCount: Ember.computed.alias('comments.length'), // Use in template for items count
init: function() {
this._super(...arguments);
this.getNewComments();
},
getNewComments: function() {
Ember.run.later(() => {
this.get('store').query('comments', { post: this.get('post.id') }).then(newItems => {
this.get('comments').pushObjects(newItems);
this.getNewComments(); // Calls itself out
});
}, 15000);
}