如何检查导致 Tracker.autorun 流星起火的原因?
How to check what caused Tracker.autorun fire in Meteor?
在加载我的 Meteor 应用程序期间,我的 Tracker.autorun
函数触发了太多次。我想检查导致该问题的原因,但我什至无法在函数内部检查是什么事件导致了它的实际火灾。我该怎么做?
编辑:
如果我在 autorun
中执行 console.trace()
,我会得到:
(anonymous) @ VM6091:1
(anonymous) @ createStore.js:21
Tracker.Computation._compute @ tracker.js:311
Tracker.Computation @
tracker.js:201
Tracker.autorun @ tracker.js:576
module.export.exports.default @ createStore.js:15
(anonymous) @
main.js:36
maybeReady @ startup_client.js:26
loadingCompleted @
startup_client.js:38
但我仍然无法确定 loadingCompleted
函数触发的原因。
During loading my Meteor app my Tracker.autorun function fires too
many times.
这意味着您多次更改自动运行函数中使用的反应源。
1) 您可以使用浏览器断点捕获更改。只需在您的自动运行函数中创建断点,然后查看调用堆栈。
2) 您可以记录所有更改反应源的函数(Collection、ReactiveVar 等...)
在加载我的 Meteor 应用程序期间,我的 Tracker.autorun
函数触发了太多次。我想检查导致该问题的原因,但我什至无法在函数内部检查是什么事件导致了它的实际火灾。我该怎么做?
编辑:
如果我在 autorun
中执行 console.trace()
,我会得到:
(anonymous) @ VM6091:1
(anonymous) @ createStore.js:21
Tracker.Computation._compute @ tracker.js:311
Tracker.Computation @ tracker.js:201
Tracker.autorun @ tracker.js:576
module.export.exports.default @ createStore.js:15
(anonymous) @ main.js:36
maybeReady @ startup_client.js:26
loadingCompleted @ startup_client.js:38
但我仍然无法确定 loadingCompleted
函数触发的原因。
During loading my Meteor app my Tracker.autorun function fires too many times.
这意味着您多次更改自动运行函数中使用的反应源。
1) 您可以使用浏览器断点捕获更改。只需在您的自动运行函数中创建断点,然后查看调用堆栈。
2) 您可以记录所有更改反应源的函数(Collection、ReactiveVar 等...)