Meteor.autorun
和 和有什么不一样Tracker.autorun
?
- 他们只是别名吗?
- 一个被弃用了吗?
- 有没有一个比另一个更可取的例子?
我很清楚this.autorun
在模板生命周期回调中使用的区别,但是已经看到这两个可以互换使用,只是想确保我没有错过任何技巧。
Meteor.autorun
和 和有什么不一样Tracker.autorun
?
我很清楚this.autorun
在模板生命周期回调中使用的区别,但是已经看到这两个可以互换使用,只是想确保我没有错过任何技巧。
嗯,用身份算子很容易找出来。
这将是false
因为它不是相同的功能:
(function() {} === function() {})
让我们试试这两个autorun
:
(Meteor.autorun === Tracker.autorun)
这返回true
。所以是的,它只是一个纯粹的别名。
但是,仅Tracker.autorun
记录在案。我怀疑为了兼容性而留下了某种旧 API……让我们在 GitHub 上
检查一些Meteor 代码!
文件 :
deprecated.js
Meteor.autorun = Tracker.autorun;
这是在deprecated.js
,它说明了一些事情//Deprecated functions
和一些与 Meteor 0.5.4的向后兼容性。您应该使用哪一个似乎很清楚。
您可以在那里找到其他一些旧计时器,例如Deps
...
尝试在控制台中运行,它会像您尝试运行一样Meteor.autorun();
抛出以下错误Uncaught Error: Tracker.autorun requires a function argument
Tracker.autorun();