基本使用
- 安装与升级
- 在安装
node的时候会自动安装npm sudo npm install npm -g进行升级,使用cnpm的话,sudo cpm install npm -g进行升级
- 在安装
- 安装模块
- 全局
- 命令行等工具,使用全局安装
npm install <package_name> -g
- 本地项目
- 你项目中的各种依赖
npm install <package_name>
- 全局
- 使用
package.json- 在项目中管理
npm模块,最好的方式是创建一个package.json的文件进行管理 - 好处
- 你依赖的各个模块在文件中都有记载
- 可以让你指定模块的特定版本
- 更好的协作性
npm install <package_name> --save安装模块,并写入package.json的dependencies字段npm install <package_name> --save-dev安装模块,并写入package.json的devDependencies字段
- 在项目中管理
package.json中的版本号- 指定版本:
"gulp": "1.2.2",只允许装1.2.2的版本 - 允许bug-fixed版本自动升级
~:"gulp": "~1.2.2",最后一位小版本可以高于2,但不允许装1.3.x的版本,1.2.3的版本是可以的 - 中间版本号可以升级
+:"gulp": "+1.2.2",可以安装1.x.x的版本,但是2.x.x是不允许的 latest:"gulp": "latest",安装最新版本
- 指定版本:
- 升级模块
- 本地模块
npm outdated查看哪些需要升级npm update进行升级
- 全局模块
npm outdated -g --depth=0npm update -g升级全部模块
- 本地模块
- 卸载模块
- 本地
npm uninstall lodash删除模块npm uninstall --save lodash,删除模块,并在package.json中移除
- 全局
npm uninstall -g jshint
- 本地
问题
- 提示
EACCESerror(两种解决方案)- 改变
npm默认目录的权限- 找到
npm的路径npm config get prefix
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
- 找到
- 更改
npm的默认目录- 创建一个新目录
mkdir ~/.npm-global npm配置到该目录npm config set prefix '~/.npm-global'- 创建一个
~/.profile文件,并写入export PATH=~/.npm-global/bin:$PATH - 回到命令行,进行编译
source ~/.profile
- 创建一个新目录
- 改变