我试图在收集更新时重新计算自动运行, 我只是设法在添加自动发布时让它工作。下面的代码完美无缺。
Tracker.autorun(function() {
var pages = Posts.find().fetch();
_.each(pages, function(page) {
console.log("react");
if (typeof page.adress !== 'undefined' &&
typeof page.lat !== 'undefined' &&
typeof page.long !== 'undefined') {
var objMarker = {
id: page._id,
lat: page.lat,
lng: page.long,
title: page.name
};
// check if marker already exists
if (!gmaps.markerExists('id', objMarker.id))
gmaps.addMarker(objMarker);
}
});
});
}
我需要的是对订阅的反应。 我已定义此出版物:
Meteor.publish('allposts', function() {
返回Posts.find({}); });
答案 0 :(得分:1)
从您的代码看起来似乎缺少订阅客户端上的记录
试试这个
remove autopublish package
在服务器上发布记录
Meteor.publish('allposts', function() {
return Posts.find({});
});
在客户端中,订阅反应计算中的记录
Tracker.autorun(function(){
Meteor.subscribe('allposts');
})
现在在客户端中,您可以在任何您想要的地方使用Posts.find({})