NPM使用詳解(上)

一、NPM是什麼?html

NPM是JavaScript的包管理工具,在安裝NodeJS(什麼?你不知道node?來,咱們合計合計:https://nodejs.org/)的時候,會自動安裝上npm。node

要查看安裝的npm版本,只須要打開cmd控制檯,輸入npm -vgit

NPM使得JavaScript開發者分享和重用代碼很是容易,同時也讓你可否很是方便的更新你分享的代碼。github

NPM可以本身升級本身,使用命令以下: npm install npm -gweb

二、NPM的使用

如下代碼示例中:<>表示必選參數,[]表示可選參數npm

#最經常使用命令


2.一、 init:用於初始化項目

/*
 * npm init [-f|--force|-y|--yes]
 */

//在文件夾中打開cmd,而後輸入npm init,打開項目初始化嚮導
npm init 

//若是文件夾名稱知足npm的module name,
//那麼使用以下方式,能夠直接生成一個默認的package.json
//若是文件夾名稱不知足要求,那麼會出錯
npm init -f
npm init --force
npm init --force=true 
npm init -y
npm init --yes
npm init --yes=true

2.二、install:用於安裝模塊

/*
 * npm install (with no args in a package dir)
 * npm install <tarball file>
 * npm install <tarball url>
 * npm install <folder>
 * npm install [@<scope>/]<name> [--save|--save-dev|--save-optional] [--save-exact]
 * npm install [@<scope>/]<name>@<tag>
 * npm install [@<scope>/]<name>@<version>
 * npm install [@<scope>/]<name>@<version range>
 * npm i (with any of the previous argument usage)
 */

//直接使用npm install 或者是npm i,表示根據package.json,安裝全部依賴
npm install
npm i

//若是加上--production參數,那麼只會安裝dependencies的模塊,
//而不會安裝devDependencies的內模塊
npm install --production
npm i --production

//使用全局上下文來初始化
npm install -g
npm i -g

//安裝指定模塊
npm install <packageName>
npm install <packageName> -g //全局安裝
npm install <packageName>@<version> //指定要安裝的模塊版本
npm install <packageName>@<version_start-version_end> //指定要安裝的模塊版本
npm install <packageName> --registry=<url> //指定零食的倉庫地址
npm install <packageName> --msvs_version=<vs_version> //指定編譯使用的VS版本
npm install <packageName> --save // 安裝模塊並修改package.json的dependencies
npm install <packageName> --save-dev //安裝模塊並修改package.json的devDependencies

npm install <tarball url> //從指定的壓縮包地址安裝,示例以下:
npm install https://github.com/indexzero/forever/tarball/v0.5.6

npm install <tarball file> //從指定的壓縮包安裝,以下(注意壓縮包格式):
npm install del-1.2.0.tar.gz //使用.tgz和.tar.gz格式

npm install @<scope>/<packageName> //安裝私有包

2.三、uninstall:用於卸載模塊

/*
 * npm uninstall [@<scope>/]<package> [--save|--save-dev|--save-optional]
 */

//直接卸載模塊,加上-g參數,表示卸載全局的模塊
npm uninstall <packageName> 
npm uninstall <packageName> -g

//卸載時同時修改package.json文件
npm uninstall <packageName> --save-dev
npm uninstall <packageName> --save

2.四、update:用於更新模塊

/*
 * npm update [-g] [<name> [<name> ...]]
 */

//更新一個或多個模塊,加上-g參數,表示更新全局的模塊
npm update <packageName> [packageName2...]
npm update <packageName> [packageName2...] -g

//更新時同時修改package.json文件
npm update <packageName> [packageName2...] --save-dev
npm update <packageName> [packageName2...] --save

2.五、config:用於設置npm參數

//設置指定參數
npm config set <key> <value> [--global]
npm set <key> <value> [--global] //能夠省略config
//獲取現有參數值
npm config get <key>
npm get <key> //能夠省略config
//刪除指定參數,此時參數值會變爲默認值
npm config delete <key>
//查看npm信息;注意:此命令不是查看全部參數配置
npm config list
//編輯全量的npm配置文件(.npmrc)
npm config edit
//能夠將config使用c代替,執行以上全部命令
npm c [set|get|delete|list]

2.六、cache:管理包緩存

//將指定的包加入npm緩存
npm cache add <tarball file>
npm cache add <folder>
npm cache add <tarball url>
npm cache add <name>@<version>
//查看現有的npm包緩存,若是加上path參數,則查看該路徑下的文件
npm cache ls [<path>] 
eg: npm cache ls gulp
//清空緩存。若是加上path,則清理指定路徑下的包緩存
npm cache clean [<path>]
eg: npm cache clean gulp
相關文章
相關標籤/搜索