【发布时间】:2015-07-17 15:53:52
【问题描述】:
在 Backbone 中,如果您想在模型之间进行交谈,您通常会通过事件来进行。例如,如果 sayHi() 应该在 Friend 模型中而不是在 Stranger 模型中完成,您应该执行以下操作。
在陌生人里面
Friend.trigger("callSayHi");
朋友圈
this.listenTo("callSayHi", function() {
sayHi();
}
我想在 Meteor 中做同样的事情,我想使用 Session var 拟合。
在陌生人里面
Session.set("callSayHi", true);
朋友圈
if (Session.get("callSayHi") {
sayHi();
}
// Session.set("callSayHi", false); <-- PROBLEM
让我们在这里忽略范围界定问题(使用ReactiveVar 更好,等等)。问题是,为了更恰当地处理这种情况,我必须将最后的会话变量再次设置为false,但这会无限地调用sayHi() 事件。我觉得这种情况很常见。 Meteor 的处理方式是什么?
【问题讨论】:
标签: meteor backbone-events eventtrigger