迁移到 Meteor 2.10
如何将您的应用程序迁移到 Meteor 2.10。
Meteor 2.10 中的大多数新功能要么直接在后台应用(以向后兼容的方式),要么是可选的。有关更改的完整细分,请参阅变更日志。
话虽如此,您应该实现一些项目,以便将来更容易。
异步 Tracker
将您的异步调用包装在Tracker.withComputation
方法中将确保即使是异步调用也是响应式的。
之前,如果您使用如下代码,它只会运行一次,并且不会是响应式的
Tracker.autorun(async function example1() {
let asyncData = await asyncDataFunction();
let users = Meteor.users.find({}).fetch();
});
在 2.10 之前,要使其响应式,您需要在异步调用之前调用响应式数据源
Tracker.autorun(async function example2() {
let users = Meteor.users.find({}).fetch();
let asyncData = await asyncDataFunction();
});
现在,您可以通过将异步调用包装在Tracker.withComputation
方法中使这两个示例都具有响应式。
Tracker.autorun(async function example1(computation) {
let asyncData = await Tracker.withComputation(computation, () => asyncDataFunction());
let users = Meteor.users.find({}).fetch();
});
Tracker.autorun(async function example2(computation) {
let users = await Tracker.withComputation(computation, () => Meteor.users.find({}).fetch());
let asyncData = await Tracker.withComputation(computation, () => asyncDataFunction());
});
// using async mongo api
Tracker.autorun(async function example2(computation) {
let asyncData = await Tracker.withComputation(computation, () => asyncDataFunction());
let users = await Tracker.withComputation(computation, () => Meteor.users.find({}).fetchAsync());
});
从低于 2.9 的版本迁移?
如果您从低于 Meteor 2.9 的版本迁移,则可能存在本指南中未列出的重要注意事项。请查看旧的迁移指南以获取详细信息
- 迁移到 Meteor 2.9 (从 2.8)
- 迁移到 Meteor 2.8 (从 2.7)
- 迁移到 Meteor 2.7 (从 2.6)
- 迁移到 Meteor 2.6 (从 2.5)
- 迁移到 Meteor 2.5 (从 2.4)
- 迁移到 Meteor 2.4 (从 2.3)
- 迁移到 Meteor 2.3 (从 2.2)
- 迁移到 Meteor 2.2 (从 2.0)
- 迁移到 Meteor 2.0 (从 1.12)
- 迁移到 Meteor 1.12 (从 1.11)
- 迁移到 Meteor 1.11 (从 1.10.2)
- 迁移到 Meteor 1.10.2 (从 1.10)
- 迁移到 Meteor 1.10 (从 1.9.3)
- 迁移到 Meteor 1.9.3 (从 1.9)
- 迁移到 Meteor 1.9 (从 1.8.3)
- 迁移到 Meteor 1.8.3 (从 1.8.2)
- 迁移到 Meteor 1.8.2 (从 1.8)
- 迁移到 Meteor 1.8 (从 1.7)
- 迁移到 Meteor 1.7 (从 1.6)
- 迁移到 Meteor 1.6 (从 1.5)
- 迁移到 Meteor 1.5 (从 1.4)
- 迁移到 Meteor 1.4 (从 1.3)
- 迁移到 Meteor 1.3 (从 1.2)