【发布时间】:2013-10-23 06:47:56
【问题描述】:
如果有人在客户端上做某事,比如
Foo.insert({blah : 1})
Foo 是一个 Meteor 集合,这实际上触发了一个 Meteor.method 调用,如 http://docs.meteor.com/#meteor_methods 的最后一段所述,它在客户端和服务器上执行代码。 p>
但是,假设我定义了一个方法(在客户端和服务器上)做同样的事情:
Meteor.methods({
bar: function() {
Foo.insert({blah : 1})
}
});
现在,我用
在客户端上触发它Meteor.call("bar");
Foo.insert 现在将作为该方法的结果在客户端和服务器上被调用。但是,insert 的客户端调用如何知道不再调用服务器,因为它本身就是一个方法?
此外,有没有办法在客户端调用insert而不自动触发规范的服务器端延迟补偿调用并产生同步? (关于我为什么要这样做,请参阅Loading a Meteor client app with fake fire-and-forget data)
【问题讨论】: