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
查看所有已經安裝的模塊 ll
、 ls
、 la
三個命令意思都一樣 但是列表的展示方式不一樣 喜歡用哪個就看個人喜好了,不懂的同學可以每個都去試下。
npm uninstall packagename [options]
卸載已經安裝的模塊,后面的options參數意思與安裝時候的意思一樣,與這個命令相同的還有npm remove
、npm rm
、npm r
、 npm un
、 npm unlink
這幾個命令功能和npm uninstall
基本一樣,個人覺得沒什么區別。
npm outdated
這個命令會列出所有已經過時了的模塊,對於已經過時了的模塊可以使用下面的命令去更新
npm update [-g]
更新已經安裝的模塊(或全局的模塊)
npm help '命令'
查看某條命令的詳細幫助
npm root
查看命令的絕對路徑
npm config
設置npm命令的配置路徑,這個命令一般用於設置代理,畢竟大部分都是國外的模塊,不過個人還是比較喜歡用cnpm
這個命令是用的淘寶的鏡像,用法與npm一樣,速度還可以。
除去以上的這些命令外,經常還能見到一些npm start
、npm deploy
、 npm 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中文文檔》;