npm常用命令
安裝
全局安裝與本地安裝
npm install name -g //全局安裝
npm install name -global
全局安裝(global),使用-g 或 --global
npm install name //本地安裝(local)
將包安裝到全局環(huán)境中
本地安裝
- 將安裝包放在 ./node_modules 下(運行 npm 命令時所在的目錄),如果沒有 node_modules 目錄棍好,會在當前執(zhí)行 npm 命令的目錄下生成 node_modules 目錄识颊。
- 可以通過 require() 來引入本地安裝的包。
全局安裝
將安裝包放在 /usr/local 下或者你 node 的安裝目錄揪惦。
-
可以直接在命令行里使用遍搞。
如果你希望具備兩者功能,則需要在兩個地方安裝它或使用 npm link器腋。
安裝指定版本
npm install gulp@3.9.1
移除
npm uninstall name
更新模塊
npm updat name
查看
查看所有全局(global)安裝的模塊:
npm list -g
或
npm ls -g
查看所有本地(local)安裝的模塊:
npm list
或
npm ls
查看某個模塊的版本號
npm list name
查看包的安裝路徑
npm root //輸出本地(local)node_modules的路徑
npm root -g //輸出全局(global)node_modules的路徑
搜索
npm search name
其他
npm -v 查看npm安裝的版本
或
npm -version
sudo npm install npm -g 更新npm
Package.json
創(chuàng)建生成Package.json
npm init:會引導你創(chuàng)建一個package.json文件溪猿,包括名稱钩杰、版本、作者這些信息等
name - 包名诊县。
version - 包的版本號讲弄。
description - 包的描述。
homepage - 包的官網(wǎng) url 依痊。
author - 包的作者姓名避除。
contributors - 包的其他貢獻者姓名。
dependencies - 依賴包列表胸嘁。如果依賴包沒有安裝驹饺,npm 會自動將依賴包安裝在 node_module 目錄下。生產(chǎn)階段的依賴
devDependencies -開發(fā)環(huán)境
optionalDependencies 可選階段的依賴
repository - 包代碼存放的地方的類型缴渊,可以是 git 或 svn赏壹,git 可在 Github 上。
main - main 字段指定了程序的主入口文件衔沼,require('moduleName') 就會加載這個文件蝌借。這個字段的默認值是模塊根目錄下面的 index.js。
keywords - 關鍵字
[-S|--save|-D|--save-dev|-O|--save-optional] [-E|--save-exact] [--dry-run]
項目對模塊的依賴可以使用下面的 3 種方法來表示
-S, --save 安裝包信息將加入到dependencies(生產(chǎn)階段的依賴)
舉例子:
npm install gulp --save 或 npm install gulp -S
package.json 文件的 dependencies 字段:
"dependencies": { "gulp": "^3.9.1"}
-D, --save-dev 安裝包信息將加入到devDependencies(開發(fā)階段的依賴)指蚁,所以開發(fā)階段一般使用它
舉例子:
npm install gulp --save-dev 或 npm install gulp -D
package.json 文件的 devDependencies字段
"devDependencies": { "gulp": "^3.9.1"}
-O, --save-optional 安裝包信息將加入到optionalDependencies(可選階段的依賴)
舉例子:
npm install gulp --save-optional 或 npm install gulp -O
package.json 文件的optionalDependencies字段:
"optionalDependencies": { "gulp": "^3.9.1"}
-E, --save-exact 精確安裝指定模塊版本
舉例子:
npm install gulp --save-exact 或 npm install gulp -E
package.json 文件的 dependencies 字段:
"dependencies": { "gulp": "3.9.1"}
版本管理
npm 中模塊版本遵循的規(guī)范:semver 2.0菩佑。
表達式 | 版本范圍 |
---|---|
>=1.2.7 | 大于等于1.2.7 |
>=1.2.7 <1.3.0 | 1.2.7,1.2.8,1.2.9 |
1.2.3 - 2.3.4 | >=1.2.3 <=2.3.4 |
1.2 - 2.3.4 | >=1.2.0 <=2.3.4 |
1.2.3 - 2.3 | >=1.2.3 <2.4.0 |
1.2.3 - 2 | >=1.2.3 <3.0.0 |
* | >=0.0.0 |
1.x(等價于1.X) | >=1.0.0 <2.0.0 |
1.2.x | >=1.2.0 <1.3.0 |
""(等價于*) | >=0.0.0 |
1(等價于1.x.x) | >=1.0.0 <2.0.0 |
1.2(等價于1.2.x) | >=1.2.0 <1.3.0 |
~1.2.3(>=1.2.3 <1.(2+1).0) | >=1.2.3 <1.3.0 |
~1.2(>=1.2.0 <1.(2+1).0) | >=1.2.0 <1.3.0 |
~1(>=1.0.0 <(1+1).0.0) | >=1.0.0 <2.0.0 |
~0.2.3(>=0.2.3 <0.(2+1).0) | >=0.2.3 <0.3.0 |
~0.2(>=0.2.0 <0.(2+1).0) | >=0.2.0 <0.3.0 |
~0(>=0.0.0 <(0+1).0.0) | >=0.0.0 <1.0.0 |
~1.2.3-beta.2 | >=1.2.3-beta.2 <1.3.0 |
^1.2.3 | >=1.2.3 <2.0.0 |
^0.2.3 | >=0.2.3 <0.3.0 |
^0.0.3 | >=0.0.3 <0.0.4 |
^1.2.3-beta.2 | >=1.2.3-beta.2 <2.0.0 |
^0.0.3-beta | >=0.0.3-beta <0.0.4 |
^1.2.x | >=1.2.0 <2.0.0 |
^0.0.x | >=0.0.0 <0.1.0 |
^0.0 | >=0.0.0 <0.1.0 |
^1.x | >=1.0.0 <2.0.0 |
^0.x | >=0.0.0 <1.0.0 |
npm config
npm start 啟動模塊
npm start gulp
該命令寫在package.json文件scripts的start字段中凝化,可以自定義命令來配置一個服務器環(huán)境和安裝一系列的必要程序稍坯,如
"scripts": { "gulp": "gulp -all"}
如果package.json文件沒有設置start,則將直接啟動node server.js
npm stop 停止模塊
npm stop [-- <args>]
npm restart 重新啟動模塊
npm restart [-- <args>]
推薦:npm-阮一峰