npm的包安裝分為本地安裝(local)、全局安裝(global)兩種,從敲的命令行來看,差別只是有沒有-g而已。格式如下:
npm install 包名 # 本地安裝
npm install -g 包名 # 全局安裝
具體區別:
1、安裝模塊包位置:
1)全局安裝時,會把模塊下載到“全局目錄”中,【全局目錄】通過 npm config set prefix "目錄路徑" 來設置。通過 npm config get prefix 來獲取當前設置的目錄。
2)本地安裝是,會把模塊下載到當前命令行所在目錄,c:\123>npm install xxx 將會安裝到 c:\123\node_modules\xxx
這種方式顯然是不好的,所以一般都會使用全局安裝方式統一安裝的一個目錄中去,這樣既方便管理、結構清晰還可以重復利用。
2、調用方式:
1)全局的安裝是供命令行(command line)使用的,比如grunt,全局安裝的方式是沒有辦法用require調用包的;
注:使用全局模式安裝的包並不能直接在 JavaScript 文件中用 require 獲得,因為 require 不會搜索 /usr/local/lib/node_modules/。
2)本地安裝可以直接通過require()的方式引入;var moduleName = require('moduleName')
注:可以通過使用npm set global=true/false來設定安裝模式,npm get global可以查看當前使用的安裝模式。