目錄
# 包的管理
# ----》創(chuàng)建包
# ----》安裝包
# ----》刪除包
# ----》發(fā)布包
# ----》更新包
# ----》列出包
# 緩存目錄
# 淘寶鏡像
# 遇到問(wèn)題
# 其他雜項(xiàng)
正文
#創(chuàng)建包
npm init
//npm init --yes
#安裝包
//全局安裝
npm install -g 模塊名稱(chēng)
//本地安裝
npm install 模塊名稱(chēng)
//生產(chǎn)依賴(lài)
npm install 模塊 --save
npm install 模塊 --S
//開(kāi)發(fā)依賴(lài)
npm install 模塊 --save-dev
npm install 模塊 -D
#刪除包
//全局刪除
npm uninstall -g package
//局部刪除
npm uninstall 模塊
npm uninstall 模塊 --save
npm uninstall 模塊 --save-dev
#發(fā)布包
//登陸
npm login
//添加賬戶
//第一次發(fā)布npm adduser
//發(fā)布
npm publish
//撤銷(xiāo)
npm unpublish 包名
#更新包
//1.修改包的版本(package.json里的version字段)
//2.npm publish
一套版本控制標(biāo)準(zhǔn)
類(lèi)目 | 描述 |
---|---|
補(bǔ)丁 | 修復(fù)bug,小改動(dòng)徐矩,增加z |
小改 | 增加了新特性,但能向后兼容叁幢,增加y |
大改 | 有很大的改動(dòng)滤灯,無(wú)法向后兼容,增加x |
一批改變版本指令
類(lèi)目 | 描述 |
---|---|
大改 | npm version major |
小改 | npm version minor |
補(bǔ)丁 | npm version patch |
#列出包
//最上層包
npm ls --depth=0
//簡(jiǎn)要說(shuō)明
npm la
緩存目錄
//查看
npm config get cache
//清空
rm -rf ~/.npm/*
//or npm cache clean
//or
//安裝
npm install --cache-min 9999999 <package-name>
淘寶鏡像
npm config set registry https://registry.npm.taobao.org
//還原鏡像 npm config set registry http://registry.npmjs.org
遇到問(wèn)題
問(wèn)題:npm 安裝出現(xiàn) UNMET DEPENDENCY 的解決方案
解決:
https://lellansin.wordpress.com/2014/02/27/npm-安裝出現(xiàn)-unmet-dependency-的解決方案/
問(wèn)題:code EINTEGRITY
解決:
https://stackoverflow.com/questions/48852553/unable-to-create-new-angular-project-err-code-eintegrity
問(wèn)題:
Unexpected end of JSON input while parsing near '...":"^0.1.0","yargs":"^'
解決:npm cache clean --force && npm install --registry=https://registry.npm.taobao.org
https://blog.csdn.net/csdn_yudong/article/details/79781842
問(wèn)題:
莫名其妙的問(wèn)題
解決:
npm install npm -g
npm cache clear && rm -rf node_modules && npm install
問(wèn)題:
npm ERR! peer dep missing: ajv@^6.0.0, required by ajv-keywords@3.2.0
解決:
npm ll ajv-keywords@3.2.0
npm install ajv@^6.0.0
問(wèn)題:
在安裝完成我們的npm模塊后曼玩,根據(jù)當(dāng)時(shí)的各軟件模版版本情況下載合適的版本到本地鳞骤,今天安裝調(diào)試ok,明天很有可能就有新的依賴(lài)的版本發(fā)布演训,而這時(shí)如果再次執(zhí)行npm install就有可能下載了不同版本的依賴(lài)弟孟,很有可能會(huì)產(chǎn)生問(wèn)題!怎么辦样悟?
解決:
方案1
npm install
npm shrinkwrap
其他雜項(xiàng)
查看版本
npm -v
查看幫助
npm -h
npm help config
配置管理
//設(shè)置配置
npm config set <key> <value> [-g|--global]
npm set <key> <value> [-g|--global]
//查看配置
查看默認(rèn)配置:npm config list [-l] [--json]
npm config list -l
npm config ls -l
npm c ls -l
npm config list --json
查看當(dāng)前配置:
npm config list
查看某一鍵值:npm config get <key>
npm config get tmp
npm c get tmp
查看某一鍵值:npm get <key>
npm get tmp
//刪除配置
npm config delete <key>
//編輯配置
npm config edit
//編輯全局配置文件:npm config edit --global
//編輯局部配置文件:npm config edit
軟鏈管理
//創(chuàng)軟鏈接
cd /f/webMyLib/cssLib-dev-tool
npm link
//查看軟鏈
npm config get prefix
//連軟鏈接
cd f/webMyLib/css-wave
npm link cssLib-dev-tool
備注:package-name 是package.json中的名字, 不是目錄名字.
//現(xiàn)在開(kāi)發(fā)
//斷軟鏈接
cd f/webMyLib/css-wave
npm unlink cssLib-dev-tool
//刪除軟鏈
cd /f/webMyLib/cssLib-dev-tool
npm unlink
//刪除有問(wèn)題的包
npm ls
//or npm ls package with error
npm uninstall <packagename>
//查看當(dāng)前配置
npm config ls
//清除沒(méi)有使用的包
npm prune
//查看某個(gè)包的依賴(lài)
npm ll gulp-less
--------------------------------設(shè)置npm安裝程序時(shí)的默認(rèn)目錄
// 設(shè)置npm全局安裝程序時(shí)的目錄前綴
npm config set prefix "D:\Program Files\nodejs\X64\node_global"
// 設(shè)置npm安裝程序時(shí)的緩存位置
npm config set cache "D:\Program Files\nodejs\X64\node_cache"
// 設(shè)置環(huán)境變量NODE_PATH
NODE_PATH =D:\Program Files\nodejs\X64\node_global\node_modules
//or?
//NODE_PATH =D:\Program Files\nodejs\X64\node_global