【发布时间】:2015-08-02 16:35:18
【问题描述】:
在the Meteor documentation 之后,onStop() 函数执行:
注册一个回调函数以在订阅停止时运行。
现在,我尝试在我的出版物中使用onStop() 函数跟踪用户离开页面。
我希望它能够直接工作,因为订阅是在模板路由控制器中调用的,并且一旦离开页面,我发布的集合就不可用。但我在这里是因为即使发布在客户端上不再处于活动状态,onStop() 也不会被触发。我不确定它是如何工作的,所以这里有一些问题:
- 发布
onStop()是否会在用户离开它所附加的路径时触发? - 如果没有,是否有内置的 Meteor 机制来停止未使用的发布/订阅?如果是,它是如何工作的?是超时吗?
- 是否有必要使用
Cursor.observe()或Cursor.observeChanges()来使用/触发onStop()回调? - 为什么当我关闭浏览器或标签页,或从当前用户帐户注销时,
onStop()回调未触发?
【问题讨论】:
-
我认为您应该查看
msavin:mongol以跟踪您的出版物。这是客户端有史以来最有用的东西之一。 -
注明。我使用了一段时间,但决定摆脱它,因为我观察到的收藏反馈有一种奇怪的行为。事实是我刚刚意识到它没有触发
onStop(),因为我忘记在发布查询之前删除return。我会尝试找到我剩余问题的答案并将它们发布在这里,除非有人之前这样做过。事实证明,这是一个很好的解决方案:stackoverflow.com/questions/31557681/… -
我重新安装了
msavin:mongol,确实很方便。谢谢@Kyll!
标签: meteor iron-router meteor-publications