你不一定知道的npm那些知识

2018-11-07  本文已影响83人  该帐号已被查封_才怪

一、显示npm install 详细信息

1、显示info级别信息

npm config set loglevel info


image.png

2、显示verbose级别信息

npm config set loglevel verbose

image.png

3、显示其他级别信息

https://docs.npmjs.com/misc/config#loglevel

image.png

二、使用淘宝镜像

npm install -g cnpm --registry=https://registry.npm.taobao.org

npm config set registry https://registry.npmjs.org/

三、查看项目安装各个库的版本号

// 查看所有一级依赖的版本
npm ls --depth 0  或 npm ls --depth=0

// 查看所有一级依赖及二级依赖的版本
npm ls --depth 1 或 npm ls --depth=1
// 查看所有dependencies一级依赖的版本
npm list -depth 0 -prod true
// 查看所有devDependencies一级依赖的版本
npm list -depth 0 -dev true

四、库版本解释

image.png

库版本解释 截图自: 2018 年了,你还是只会 npm install 吗?

五、锁定库版本

1、通过prefix控制(信息来源:npm-shrinkwrap锁定依赖

当运行 npm update 时,

在此个人推荐采用~1.5.1的方式;

2、通过package-lock.json控制

npm 5.0+ 后 npm install时会自动创建package-lock.json文件;package-lock.json的出现,npm install规则发生了三次变化:(信息来源: npm install 生成的package-lock.json是什么文件?有什么用?

3、通过shrinkwrap控制 (信息来源:npm-shrinkwrap锁定依赖

也就是使用shrinkwrap控制库版本时需要执行三条命令;

package-lock.json与npm-shrinkwrap.json的作用类似,但是区别如下:

a、如果根目录下同时存在这两个文件,则以npm-shrinkwrap.json为准;
b、npm-shrinkwrap.json在npm v2、npm v3、npm v4 就已经支持了,但是package-lock.json 仅在npm v5+及以后才支持;
c、npm-shrinwkrap.json 可以被包含到发布包,而 package-lock.json 不行,保证用户可以自由管理依赖包;

4、弃用npm,采用yarn;

六、升级npm

npm install npm@latest -g

七、推荐资料

1、[译]npm入门指南
2、npm-shrinkwrap锁定依赖
3、在JavaScript项目中锁定npm依赖包版本

上一篇 下一篇

猜你喜欢

热点阅读