故事:
我使用了 angular 1 的流星 1.4。我想通过使用将“Todo”设为私有Meteor.publish
,这是客户端代码:
var now = new Date();
var start = new Date();
start.setHours(0, 0, 0, 0);
this.helpers({
todos() {
return Todos.find({createdAt: {$gte: start, $lt: now}, userId: Meteor.userId()}, {
sort: {
createdAt: -1
}
});
},
currentUser() {
return Meteor.user();
}
});
问题:
当我使用Meteor.publish
“userId”时,todo list ui 运行良好,在我添加一个新的 todo 后它可以自动更新 ui。但是在我添加Meteor.publish
过滤器后createdAt: {$gte: start, $lt: now}
,我必须刷新(F5)页面,然后我才能看到新的待办事项。这是服务器端发布代码:
Meteor.publish('todos', function tasksPublication() {
var now = new Date();
var start = new Date();
start.setHours(0, 0, 0, 0);
return Todos.find({createdAt: {$gte: start, $lt: now}, userId: this.userId});
});
谁知道怎么修它?