【发布时间】:2015-07-10 04:18:07
【问题描述】:
我正在学习流星。我按照教程创建了microscope。如果有人提交后流星将重新呈现所有用户的模板。如果有数百个帖子,这可能会非常烦人,然后用户将返回页面顶部并松散跟踪他的位置。我想实现类似于 facebook 的东西。当提交新帖子时,不会呈现模板,而是会出现一个按钮或链接。单击它将导致模板重新呈现并显示新帖子。
我正在考虑在集合上使用observeChanges 来检测任何更改,它确实会阻止页面显示新帖子,但显示它们的唯一方法是重新加载页面。
Meteor.publish('posts', function(options) {
var self = this, postHandle = null;
var initializing = true;
postHandle = Posts.find({}, options).observeChanges({
added: function(id, post) {
if (initializing){
self.added('posts', id, post);
}
},
changed: function(id, fields) {
self.changed('posts', id, fields);
}
});
self.ready();
initializing = false;
self.onStop(function() { postHandle.stop(); });
});
这是正确的道路吗?如果是,我如何提醒用户有新帖子?否则,有什么更好的方法来实现这一点?
谢谢
【问题讨论】:
标签: meteor