如何检查我的项目的流星版本?
首先,您必须知道项目中正在运行的流星版本。最简单的方法是在项目文件夹中运行meteor --version
。
如果您在项目文件夹之外运行此命令,它将显示安装在计算机上的流星版。
好的,我知道流星版。现在什么?
我建议您在流星文档上关注Changelog page。它将帮助您更好地了解从一个版本变为另一个版本的哪些变化。
要更新的命令很简单:meteor update -release METEOR@<version-number-goes-here>
,我真的建议您逐步更新,不要跳过任何版本。例如:如果您使用的是V1.8版本,则应将项目更新为v1.8.0.1,然后将V1.8.0.2,然后是1.8.1,然后是1.8.2等。
不要忘记检查可能的破坏变化
要记住的另一件事是破裂的变化和迁移步骤。有时它们毫不费力,您无需更改代码中的任何内容,但是有时需要一段时间才能更新代码并移至下一个版本,因此请仔细阅读每个版本以避免丢失任何内容。这就是为什么在更新时不要跳过任何版本至关重要。
在更新之前,在您的应用程序中进行良好的测试覆盖范围也是一个好主意,但我知道有时候不是这样。因此,请确保每次更新后运行应用程序,检查功能是否正常工作或运行测试套件。
被困在包裹上。该怎么办?
可能难以理解的一件事是如何更新包装,有时会有一个不更新的依赖性,您需要手动执行此操作。
如果您找不到满足流星版本的版本,或者不再维护软件包,则可以随时将此软件包带到您的应用程序中并覆盖所需的任何内容,并在Github上使用Ping我们。
您可以检查here包的工作方式。
简而言之,为您的项目带来包裹并覆盖您想要的任何东西:
- 您需要在项目root中创建一个名为
packages
的文件夹。 - 创建一个具有与要覆盖的软件包相同名称的文件夹。例如:
matb33:collection-hooks
。 - 之后,从软件包存储库中复制代码并将其粘贴到您创建的文件夹中。
- 现在您可以更新所需的任何代码,例如更新依赖项版本,该版本可以在
package.js
文件中找到。
api.versionsFrom('x.x.x');
方法对于获取项目中已经存在的相同包装版本真的很有帮助 - 这位于./meteor/versions
中。
Node.js版本更新
node.js版本,如果已更新,则应清洁node_modules
文件夹并运行meteor npm install
,以确保它将下载更新的节点版本的正确软件包。不要忘记运行您的项目和测试套件以确保一切正常。
重要更新
最关键的更新和需要更多工作的更新是mongodb。他们的API发生了一些破裂的变化,尤其是在v2.3
和v2.6
中,但是有一些迁移指南可以帮助您经历这一痛苦。
我希望您学会了如何更新您的应用程序。您可以随时在Forums和Slack上寻求帮助,如果您陷入某个部分。
好运,更新流星应用程序。