迁移到 Meteor 2.3

如何将您的应用程序迁移到 Meteor 2.3。

Meteor 2.3 中的大多数新功能要么直接在后台应用(以向后兼容的方式),要么是可选的。有关更改的完整细分,请参阅变更日志

话虽如此,您可能需要应用一些迁移才能解决一些重大更改。

Node.js v14

由于 Node.js 版本已升级到新的主版本,我们建议您检查您的 npm 依赖项是否与 Node.js 14 兼容。

  • 如果我们收到有关重大更改的报告,我们将在此处列出它们,但到目前为止,我们还没有意识到任何更改。
  • 不过,我们建议您阅读 Node.js 的发行说明
  • 我们建议您删除 node_modules 文件夹 (rm -rf node_modules) 并运行 meteor npm i 以确保您使用新的 Node.js 版本再次编译所有二进制依赖项。
  • 您可能还想重新创建您的锁定文件。
  • 如果出现错误,请尝试 meteor reset,它将清除缓存,请注意,这也会删除应用程序的本地数据库。

包的 `deprecated` 选项

Package.description 中,有一个新的 deprecated 选项。如果设置为 true,它将在安装时通知用户该包已弃用。此外,您可以提供一个将显示的字符串,您可以在其中引导用户下一步去哪里。

所有已弃用的官方包现在都具有弃用标志,如果您安装或更新它们,将通知您。

删除已弃用的包 API

包定义的旧 API 已被删除。旧的下划线方法名称 (Package.on_usePackage.on_testPackage._transitional_registerBuildPluginapi.add_files) 已被删除,并且将不再有效,请使用驼峰式方法名称(例如 api.addFiles())。

账户 2.0

  • [email protected]

    • 已删除弃用的向后兼容函数 logoutOtherClients
  • [email protected]

    • 已删除来自 Meteor 1.0 之前版本的弃用的向后兼容功能,用于 SRP 密码。
    • 注册账户工作流程已与重置密码工作流程分离(注册令牌记录现在存储在单独的数据库字段 services.password.enroll 中)。
  • [email protected]

    • 已删除弃用的 OAuth.initiateLogin 和其他功能,例如在 Meteor 1.0 之前的弃用 OAuth 流的返回 URI 中添加 ?close

如果您正在维护一个依赖于其中一个账户包(已进行主要版本更新)的包,您将需要手动设置新版本或设置 api.versionsFrom('2.3')。您也可以让它引用其当前版本和 2.3,如下所示:api.versionsFrom(['1.12', '2.3']),对于特定包,可以这样:api.use('[email protected] || 2.0.0')

HTTP v2

在内部,http 包已替换 fetch 的 http 使用,应该仍然与以前的版本一样工作,但边缘情况可能有所不同。这是为了帮助您过渡到 fetch。请注意,这意味着已删除 HTTP.callnpmRequestOptions 参数,因为 request 不再在内部使用。您应该迁移到使用 fetch。您可以通过以下方式安装 polyfill 包:

meteor add fetch

删除已弃用的 API

除了上面提到的删除已弃用的包 API 之外,其他长期弃用的 API 也已被删除,并且将不再有效。

  • 已删除弃用的 mobile-port 标志
  • 已从 isobuild 中删除弃用的 raw 名称
  • [email protected]
    • 已删除 Meteor 1.0 之前版本的弃用的向后兼容方法名称
  • [email protected]
    • 已删除 Meteor 1.0 之前版本的弃用的向后兼容方法名称
  • [email protected]
    • 已删除为 0.9.0 构建的包中存在的 livedata 依赖项
  • [email protected]
    • 已删除 rewind 方法,该方法对于与 Meteor 0.8.1 的兼容性是 noop
  • [email protected]
    • 已删除 rewind 方法,该方法对于与 Meteor 0.8.1 的兼容性是 noop
  • [email protected]
    • 删除 IE8 检查

从 2.2 之前的版本迁移?

如果您从 2.2 之前的 Meteor 版本迁移,则可能存在本指南中未列出的重要注意事项(该指南专门介绍 2.2 到 2.3)。请查看旧的迁移指南以获取详细信息

在 GitHub 上编辑
// 搜索框