npm依赖版本变动引起的问题


开发经常会遇到这样的问题,同样的代码 别人可以运行 自己从git上拉取下来运行却会报错

 

 

遇到很多的都是npm依赖版本变动的问题

解决:版本锁定

  • package.json中固定版本
  • npm+package-lock.json
  • npm+npm-shrinkwrap.json
  • yarn+yarn-lock.json

可以用yarn.lock文件锁住版本,这样每次新安装 都是从yarn.lock锁定的版本号中进行安装 如果未锁定,安装会默认安装最新版本 可能会与原有的版本冲突

yarn安装 用yarn.lock 

npm安装 package-lock.json(或npm-shrinkwrap.json npm5.0之前的方法)

 

npm包符号小解:

符号^:表示主版本固定的情况下,可更新最新版。例如:vuex: "^3.1.3",3.1.3及其以上的3.x.x都是满足的。

符号~:表示次版本固定的情况下,可更新最新版。如:vuex: "~3.1.3",3.1.3及其以上的3.1.x都是满足的。

无符号:无符号表示固定版本号,例如:vuex: "3.1.3",此时一定是安装3.1.3版本。

举例:
"^1.2.3": 大于等于 1.2.3 且小于 2.0.0版本
"^0.3.4": 大于等于 0.3.4 且小于 0.4.0版本
"^0.0.6": 大于等于 0.0.6 且小于 0.0.7版本

 

 

如果拉取的老代码有一天无法运行 可以尝试删除node_modules重新安装,但切记不要去除lock文件

偶尔也有node版本的问题 可以比对node版本 看是不是版本太低或太高的问题 然后安装

 

 

 

详细资料:https://my.oschina.net/u/3091008/blog/4613229


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM