1. 程式人生 > 其它 >npm 基礎命令

npm 基礎命令

npm是一個node包管理和分發工具,已經成為了非官方的釋出node模組(包)的標準。有了npm,可以很快的找到特定服務要使用的包,進行下載、安裝以及管理已經安裝的包。npm 從5.2版開始,增加了 npx 命令。請訪問:npx使用教程

1、npm install moduleNames:安裝Node模組

安裝完畢後會產生一個node_modules目錄,其目錄下就是安裝的各個node模組。

node的安裝分為全域性模式和本地模式。
一般情況下會以本地模式執行(可以理解為當前專案執行),包會被安裝到和你的應用程式程式碼的本地node_modules目錄下,只能當前專案使用。
在全域性模式下,Node包會被安裝到當前電腦Node的安裝目錄下的node_modules下,在當前電腦任何目錄都可以使用。

全域性安裝命令為 npm install -g moduleName 
獲知使用 npm set global=true 來設定安裝模式,不要嘗試這個命令,(如果嘗試了的話使用npm config ls來看一下global的設定以及檔案,然後找到.npmrc這個檔案的路徑,刪掉這個檔案或者用vim編輯裡面的global=true為false就行了。需要找.npmrc的。一個是全域性配置,一個是使用者配置。也就是userconfig對應的路徑 一般是/Users/[你的使用者]/.npmrc), npm get global 可以檢視當前使用的安裝模式。

示例:

npm install express 


預設會安裝express的最新版本,不會修改package.json之後執行npm install命令時,不會自動安裝express模組

npm install [email protected]

也可以通過在後面加版本號的方式安裝指定版本

1 npm view express versions

可以檢視express所以可以安裝的版本

npm install <name> -g 

將包安裝到全域性環境中

但是程式碼中,直接通過require()的方式是沒有辦法呼叫全域性安裝的包的。全域性的安裝是供命令列使用的,就好像全域性安裝了vmarket後,就可以在命令列中直接執行vm命令

npm install <name> --save

安裝的同時,將資訊寫入package.json的dependencies屬性下,專案路徑中如果有package.json檔案時,直接使用npm install方法就可以根據dependencies(依賴項)配置安裝所有的依賴包,這樣程式碼提交到github時,就不用提交node_modules這個檔案夾了。

之後執行npm install –production或者註明NODE_ENV變數值為production時,會自動安裝msbuild到node_modules目錄中

npm install <name> --save-dev

會把模組安裝到node_modules目錄中,在package.json的devDependencies(開發依賴項)屬性下新增這個模組,之後執行npm install命令時,會自動安裝這個模組到node_modules目錄中,之後執行npm install –production或者註明NODE_ENV變數值為production時,不會自動安裝X到node_modules目錄中

devDependencies 節點下的模組是我們在開發時需要用的,比如專案中使用的 gulp ,壓縮css、js的模組。這些模組在我們的專案部署後是不需要的,所以我們可以使用 -save-dev 的形式安裝。像 express 這些模組是專案執行必備的,應該安裝在 dependencies 節點下,所以我們應該使用 --save 的形式安裝。

簡單的說就是打包之後的生產環境包含--save的包,但是不會包含--save-dev的包
 

會把模組安裝到node_modules目錄中,在package.json的devDependencies(開發依賴項)屬性下新增這個模組,之後執行npm install命令時,會自動安裝這個模組到node_modules目錄中,之後執行npm install –production或者註明NODE_ENV變數值為production時,不會自動安裝X到node_modules目錄中

devDependencies 節點下的模組是我們在開發時需要用的,比如專案中使用的 gulp ,壓縮css、js的模組。這些模組在我們的專案部署後是不需要的,所以我們可以使用 -save-dev 的形式安裝。像 express 這些模組是專案執行必備的,應該安裝在 dependencies 節點下,所以我們應該使用 --save 的形式安裝。

簡單的說就是打包之後的生產環境包含--save的包,但是不會包含--save-dev的包
 

2、 npm view moduleNames :檢視node模組的package.json資料夾
注意事項:如果想要檢視package.json資料夾下某個標籤的內容,可以使用 npm view moduleName labelName 

3、 npm list :檢視當前目錄下已安裝的node包
注意事項:Node模組搜尋是從程式碼執行的當前目錄開始的,搜尋結果取決於當前使用的目錄中的node_modules下的內容。 npm list parseable=true 可以目錄的形式來展現當前安裝的所有node包

4、 npm help :檢視幫助命令

5、 npm view moudleName dependencies :檢視包的依賴關係

6、 npm view moduleName repository.url :檢視包的原始檔地址

7、 npm view moduleName engines :檢視包所依賴的Node的版本

8、 npm help folders :檢視npm使用的所有資料夾

9、 npm rebuild moduleName :用於更改包內容後進行重建

10、 npm outdated :檢查包是否已經過時,此命令會列出所有已經過時的包,可以及時進行包的更新

11、 npm update moduleName :更新node模組

12、 npm uninstall moudleName :解除安裝node模組

13、一個npm包是包含了package.json的資料夾,package.json描述了這個資料夾的結構。訪問npm的json資料夾的方法如下:
 npm help json  此命令會以預設的方式開啟一個網頁,如果更改了預設開啟程式則可能不會以網頁的形式開啟。

14、 npm search packageName :釋出一個npm包的時候,需要檢驗某個包名是否已存在

15、 npm init :會引導你建立一個package.json檔案,包括名稱、版本、作者這些資訊等, 

 npm init -y 快速全部以預設的方式生成一個package.json ,-y是-yes的縮寫

16、 npm root :檢視當前包的安裝路徑
 npm root -g :檢視全域性的包的安裝路徑

17、 npm -v :檢視npm安裝的版本

18、 npm config ls  : 檢視全域性安裝路徑

  轉自:https://www.cnblogs.com/jiaoshou/p/11207987.html