标签搜索

目 录CONTENT

文章目录

简述Vue项目中package-lock.json的作用

沙漠渔
2022-07-13 20:24:48 / 0 评论 / 3 点赞 / 1,001 阅读 / 996 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2022-07-13,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

之前一直没关注package-lock.json的作用,直到今天想着这个文件是lock文件就不上传git了,结果其他人拉取文件run的时候一直报错,找来找去才发现是这个不起眼的文件的问题。

问题简述

假设在package.json中,vue的版本是^2.6.14。

"vue": "^2.6.14",

^的意思是,假如过几天Vue在大版本 2下更新了小版本 2.6.15,那么当你npm install时Vue会自动升级为2.6.15,但是这一升级就可能导致不兼容的情况出现了。
比如有两个程序员,程序员A、程序员B

  • 程序员A:接手项目时Vue的版本是2.6.14,并一直使用这个版本
  • 程序员B:一个月后加入这个项目,这时Vue已经升级到2.9.14了,npm install的时候会自动升级

64e9606b1acf22af40416393131d9acf.png

总结:这会导致两个人开发时的Vue版本不同,从而会导致合作开发产生一些问题,以及错误。

怎么解决这个问题呢?package-lock.json应运而生

package-lock.json文件说明

package-lock.json的作用就是:锁定安装模块的版本号

比如现在有程序员A、程序员B两个开发者

  • 程序员A:接手项目时Vue的版本是2.6.14,此版本被锁在了package-lock.json
  • 程序员B:一个月后加入这个项目,这时Vue已经升级到2.9.14,npm install的时候,按理说会自动升级,但是由于package-lock.json中锁着2.6.14这个版本,所以阻止了自动升级,保证版本还是2.6.14

ff342c56c73a9378885538cd7e7fe5e9.png

3
广告 广告

评论区