Viki

Viki 写东西的地方

努力上进且优秀
github
email
x
steam
bilibili
douban

频繁发布 npm 包时如何确保始终安装最新版本

在一些极端情况下可能需要频繁发布 npm 包,而 npm 默认的缓存时间是 5 分钟。也就是说,在五分钟之内只会请求一次 npm 包的元数据,如果在更新后五分钟之内再次发包,默认情况下是不会检测到新版本的。

这个时候,如果你搭配 ncu(npm-check-updates 包)更新了 package.json 里的包到最新版本的话,由于 npm 的缓存,执行 npm i 会显示找不到目标 npm 包的指定版本从而更新失败。

解决方案#

使用 --prefer-online 标志

执行 npm install 或 npm update 时添加 --prefer-online 标志,设置优先从远程 registry 获取。

npm install --prefer-online xxx

要将 prefer-online 设置应用于项目范围内,可以在项目根目录下的 .npmrc 文件中添加以下设置:

prefer-online=true

类似的选项还有 --prefer-offline 等,--cache-max=0 选项其实是 --prefer-online 的 alias。有关 npm config 的更多信息请参考 npm doc

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。