package.josn中^和~的区别

  1. npm包的版本格式:比如1.2.2,遵循“大版本.次要版本.小版本“的格式规定,安装时只安装指定版本。

  2. ^ 大版本保持不变,次要版本.小版本保持最新。例如:^1.2.2,每次npm install的时候,会保持1版本不变,但是会安装当前1版本里面最新的次版本和小版本。
    ~ 大版本和次要版本保持不变,小版本保持最新。例如:~1.2.2,每次npm install的时候,会保持1.2版本不变,但是会安装当前当前1.2版本里面最新的小版本。

  3. npm install会根据package.json中的配置,来安装对应的包,如果package.json使用 ^ 或 ~ 来匹配依赖项的版本时,则 npm 可能无法安装确切版本,npm install 的时候会更新package.lock.json。

  4. npm ci: npm ci 根据 package-lock.json 安装依赖,这可以保证整个开发团队都使用版本完全一致的依赖,避免把时间浪费在排查因为依赖不一致而导致的各种奇怪问题上。(它不会更新package.lock.json),同时还能够加速node模块安装速度。

  5. vscode 的控制台中敲ng version, 显示的是npm install 安装的angular版本,也就是项目的node_modules中存在的版本,如果nodejs全局安装的版本和node_modules不一致,会出下面的信息warning信息:
    Your global Angular CLI version(这个是nodejs里面安装的版本,也就是电脑上安装的nodejs) is greater than your local(这个是vscode的node_modules里面安装的版本)。
    解决办法: 删除node_modules,重新npm install 或者npm ci

https://juejin.cn/post/7023170587304394759

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值