npm是什麼?node
npm是JavaScript的包管理工具,能夠構建重複代碼,無需手動編寫。webpack
npm安裝的方式——本地安裝和全局安裝
何時用本地/全局安裝?
1.當試圖安裝命令行工具的時候,例如 Angular CLI的時候,使用全局安裝
全局安裝的方式:npm install -g @angular/cli@1.0.0
2.當你試圖經過npm install 某個模塊,並經過require('XXX')的方式引入的時候,使用本地安裝
本地安裝的方式:npm install 模塊名稱
本地安裝會將文件安裝到本地項目的node_modules中
而使用-g的方式進行全局安裝,把模塊統一安裝到一個目錄中去,這樣既方便管理、結構清晰還能夠重複利用。
經過 npm config set prefix "目錄路徑" 來設置全局路徑。
經過 npm config get prefix 來獲取當前設置的全局目錄。
注意一個問題,在團隊協做中,一個常見的情景是他人從github上clone你的項目,而後經過npm install安裝必要的依賴,(剛從github上clone下來是沒有node_modules的,須要安裝)那麼
根據什麼信息安裝依賴呢?就是你的package.json中的dependencies和devDepencies。因此,在本地安裝的同時,
將依賴包的信息(要求的名稱和版本)寫入package.json中是很重要的!
By default,
npm install
will install all modules listed as dependencies in
package.json
.
npm install 將會把全部在package.json中的依賴所有下載安裝到node_modules中
npm install 模塊:安裝好後不寫入package.json中
npm install 模塊 --save 安裝好後寫入package.json的dependencies中(生產環境依賴)
npm install 模塊 --save-dev 安裝好後寫入package.json的devDepencies中(開發環境依賴)
示例:
我在項目下安裝webpack:進入項目終端輸入npm install
安裝完畢後個人package.json
卸掉webpack再重裝:輸入npm install webpack --save後:
卸掉webpack再重裝:npm install webpack --save-dev後:
安裝以前,npm install
會先檢查,node_modules
目錄之中是否已經存在指定模塊。若是存在,就再也不從新安裝了,即便遠程倉庫已經有了一個新版本,也是如此。git
若是你但願,一個模塊無論是否安裝過,npm 都要強制從新安裝,可使用-f
或--force
參數。github
$ npm install <packageName> --force
刪除全局模塊
npm uninstall -g <package>利用npm
刪除本地模塊
npm uninstall 模塊
刪除本地模塊三種方式:
npm uninstall 模塊:刪除模塊,但不刪除模塊留在package.json中的對應信息
npm uninstall 模塊 --save 刪除模塊,同時刪除模塊留在package.json中dependencies下的對應信息
npm uninstall 模塊 --save-dev 刪除模塊,同時刪除模塊留在package.json中devDependencies下的對應信息
刪除全局模塊
npm uninstall -g @angular/cliweb
npm cache clean npm
npm install -g @angular/cli@1.0.0json