gpt4 book ai didi

javascript - 大型生产应用程序的插入符、波形符或固定 package.json?

转载 作者:行者123 更新时间:2023-12-03 13:49:32 25 4
gpt4 key购买 nike

我有一个正在生产中的大型 react 应用程序,我想知道是否最好为我的包使用固定版本?我听说使用插入符号 (^) 是一种很好的做法,但在我看来,这会让应用程序容易出现更多错误?

我已经用谷歌搜索了这个问题很多次,^ 和固定版本之间似乎存在分歧。 (npm) 文档中是否有关于使用哪种方法的明确答案?

最佳答案

在开发过程中,您可以选择您喜欢的任何一个,但我建议您在开始测试应用程序之前、投入生产之前进行收缩包装。锁定依赖项:

npm shrinkwrap

This command repurposes package-lock.json into a publishable npm-shrinkwrap.json or simply creates a new one. The file created and updated by this command will then take precedence over any other existing or future package-lock.json files. For a detailed explanation of the design and purpose of package locks in npm, see npm-package-locks.

这样你就可以保留 package.json 中声明的依赖项因为它们是(波形符/插入符),但在 npm-shrinkwrap.json 中声明的确切版本仅在 npm 安装时使用。

我个人在投入生产之前遇到了一个问题,当使用 ~ 声明依赖项时(更严格的)已更新并引入了一个错误(补丁/错误修复不应发生这种情况)。这种事只发生过一次,但我不想尝试命运。

您可以随时更新您的 npm-shrinkwrap.json首先做npm update <package_name>指定需要更新的包,然后重新执行 npm shrinkwrap更新现有的npm-shrinkwrap.json .

...别忘了 npm ci

关于javascript - 大型生产应用程序的插入符、波形符或固定 package.json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55245409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com