项目中nodejs包高效升级插件npm-check-updates

最近想升级npm的包

1、//常规的包升级方式/


2、npm update (包)

npm一搜发现了一个很好的升级工具

npm-check-updates

安装方法

sudo npm install -g npm-check-updates

如果是cnpm

sudo cnpm install -g npm-check-updates

重载下zsh或者其他bash

zsh

现在可以使用这个轮子了

npm-check-updates

//或者ncu   ncu 是它的别名(alias)

如果出现这个说明,包都是最新版

All dependencies match the latest package versions :)

如果是其他的 例如

 express           4.12.x  →   4.13.x
 multer            ^0.1.8  →   ^1.0.1
 react-bootstrap  ^0.22.6  →  ^0.24.0
 react-a11y        ^0.1.1  →   ^0.2.6
 webpack          ~1.9.10  →  ~1.10.5

说明有些包需要升级 这时候我们使用

ncu -a

//即可一键升级


NPM命令详解

平时工作中经常用npm安装,每次用的时候有些命令都要去查一次,这次就自己把这些命令整理下,让自己可以多记住一些。

对于还不知道NPM是什么的同学请自行google吧 这里我就不多BB了,主要记录一下NPM几个常用命令和参数的意思

npm install packagename

安装模块如不指定版本号 默认会安装最新的版本

npm install packagename 0.0.1

安装指定版本的模块

npm init

这个命令会在当前目录生成一个package.json文件,这个文件中会记录一些关于项目的信息,比如:项目的作者,git地址,入口文件、命令设置、项目名称和版本号等等,一般情况下这个文件是必须要有的,方便后续的项目添加和其他开发人员的使用。

npm install packagename --save 或 -S

--save、-S参数意思是把模块的版本信息保存到dependencies(生产环境依赖)中,即你的package.json文件的dependencies字段中;

npm install packagename --save-dev 或 -D

--save-dev 、 -D参数意思是吧模块版本信息保存到devDependencies(开发环境依赖)中,即你的package.json文件的devDependencies字段中;

npm install packagename --save-optional 或 -O

--save-optional 、 -O参数意思是把模块安装到optionalDependencies(可选环境依赖)中,即你的package.json文件的optionalDependencies字段中。(本人菜鸟一枚,一直也没理解这个,不过看到了就记录一下吧,万一哪天用到了,说不准就懂了......)

npm install packagename --save-exact 或 -E

--save-exact 、 -E参数的意思是精确的安装指定版本的模块,细心的同学会发现dependencies字段里每个模块版本号前面的^不见鸟。。。

如果你打开的是别人的项目,这个时候一般是没有任何依赖包的,但是所以需要的包已在package.json里面写好了,这个时候我们就可以使用npm install来安装所有项目中需要的依赖包了

npm install packagename -g 或 --global

安装全局的模块(不加参数的时候默认安装本地模块)

npm list 或 npm ll 或 npm la 或 npm ls

查看所有已经安装的模块 lllsla 三个命令意思都一样 但是列表的展示方式不一样 喜欢用哪个就看个人喜好了,不懂的同学可以每个都去试下。

npm uninstall packagename [options]

卸载已经安装的模块,后面的options参数意思与安装时候的意思一样,与这个命令相同的还有npm removenpm rmnpm rnpm unnpm unlink 这几个命令功能和npm uninstall基本一样,个人觉得没什么区别。

npm outdated

这个命令会列出所有已经过时了的模块,对于已经过时了的模块可以使用下面的命令去更新

npm update [-g]

更新已经安装的模块(或全局的模块)

npm help '命令'

查看某条命令的详细帮助

npm root

查看命令的绝对路径

npm config

设置npm命令的配置路径,这个命令一般用于设置代理,毕竟大部分都是国外的模块,不过个人还是比较喜欢用cnpm 这个命令是用的淘宝的镜像,用法与npm一样,速度还可以。

除去以上的这些命令外,经常还能见到一些npm startnpm deploynpm build等等之类的命令,这些一般都是在package.json 中自定义的一些启动、重启、停止服务之类的命令。可以在package.json文件的scripts字段里自定义。例如:

"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack",
    "start": "webpack-dev-server main.js,
    "deploy": "set NODE_ENV=production"
  }

关于package.json的详细文档,有兴趣的同学可以参考《package.json中文文档》