1. 程式人生 > >npm常用命令及引數詳解

npm常用命令及引數詳解

5

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 rmnpm r 、 npm un 、 npm unlink 這幾個命令功能和npm uninstall基本一樣,個人覺得沒什麼區別。

npm outdated

這個命令會列出所有已經過時了的模組,對於已經過時了的模組可以使用下面的命令去更新

npm update [-g]

更新已經安裝的模組(或全域性的模組)

npm help '命令'

檢視某條命令的詳細幫助

npm root

檢視命令的絕對路徑

npm config

設定npm命令的配置路徑,這個命令一般用於設定代理,畢竟大部分都是國外的模組,不過個人還是比較喜歡用cnpm 這個命令是用的淘寶的映象,用法與npm一樣,速度還可以。

除去以上的這些命令外,經常還能見到一些npm startnpm 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中文文件》