如何在使用*而不是package.json中的版本号时始终获取最新版本?

Luk*_*kas 5 npm npm-install npmjs

我对package.json具有私人依赖关系,因此应始终安装最新版本。因此,它不是版本,而是*

"dependencies": {
   "@user/package": "*"
}
Run Code Online (Sandbox Code Playgroud)

在npmjs中更新软件包后,npm i如果我输入的不是确切的版本号,它仍然会安装旧版本*-它会安装一个新版本,该版本已于一天前发布。

我在一分钟前在npmjs上更新该版本时遇到了类似的问题,但是现在npmjs缓存应该已过期并使用新版本进行更新,不是吗?

如何避免出现此类问题,并始终为所有内容提供最新版本*

我试过了npm cache verify npm cache clean --force。没运气。

Ty *_*ayn 5

您可以尝试使用 packagename@latest 关键字进行安装,但据我所知,您只能在命令行界面中使用 npm install --save 使用此关键字。

npm install --save mypackage@latest
Run Code Online (Sandbox Code Playgroud)

在阅读此处的文档https://docs.npmjs.com/files/package.json 后, 我发现您可以在 package.json 文件中编写“最新”而不是任何版本号。这应该可以解决问题。


Luk*_*kas 5

即使在依赖的初始安装有必要使用npm update代替npm install

这个问题更多地谈论npm installvsnpm update

npm install 与 update - 有什么区别?

结论:唯一的大区别是一个已经安装的带有模糊版本控制的模块......

  • 被 npm install 忽略
  • 由 npm update 更新

感谢 CodeCaster 提供正确命令的链接。但:

问题仍然存在。大多数时候,它每次都有效。但。当 npm 无法解析为最新版本时,刚刚进行了另一次更新。*现在将值从形式转换为数字。对我来说似乎是一个错误。