npm 是什么?
NPM 的全称是 Node Packge Manager , 是随同 NodeJs 一起安装的包管理器和分发工具,
它很方便让 JavaScript 开发者下载, 安装, 上传以及管理已经安装的包.
npm install 安装模块?
安装包会默认安装最新的版本, npm install gulp
还可以安装指定的版本, npm install gulp@3.9.1 安装包将信息保存到项目的 package.json 文件中
项目对模块的依赖可以使用以下四种来表示:
1-S ,--save 安装包信息将加入到 dependencies(生产阶段的依赖)
npm install gulp --save 或者 npm install gulp -s
- "dependencies": {
- "gulp": "^3.9.1"
- }
2-D ,--save 安装包信息将加入到 devDependencies(开发阶段的依赖), 所以开发阶段一般使用它
npm install gulp --save-dev 或者 npm install gulp -D
- "devDependencies": {
- "gulp": "^3.9.1"
- }
3-O, --save-optional 安装包信息将加入到 optionalDependencies(可选阶段的依赖)
npm install gulp --save-optional 或 npm install gulp -o
- "optionalDependencies": {
- "gulp": "^3.9.1"
- }
4-E, --save-exact 精确安装指定模块版本
npm install gulp --save-exact 或 npm install gulp -E 输入命令 npm install gulp -ES, 留意 package.json
文件的 dependencies 字段, 以看出版本号中的 ^ 消失了
- "dependencies": {
- "gulp": "3.9.1"
- }
- npm install ?
模块的依赖都被写入了 package.json 文件后, 他人打开项目的根目录 (项目开源, 内部团队合作),
使用 npm install 命令可以根据 dependencies 配置安装所有的依赖包
本地安装 npm install gulp
全局安装 npm install gulp -g
npm uninstall 卸载模块?
npm uninstall gulp --save-dev
npm update 更新模块?
npm update [-g] [<pkg>...]
npm outdated 检查模块是否已经过时?
npm outdated [[<@scope>/]<pkg> ...]
npm ls 查看安装的模块?
npm ls [[<@scope>/]<pkg> ...]
npm ls -g 查看全局安装的模块及依赖
npm init 在项目中引导创建一个 package.json 文件, 需要手动
npm init -y 在项目中引导创建一个 package.json 文件, 不需要手动
npm root 查看包的安装路径?
npm root [-g]
npm config 管理 npm 的配置路径?
- npm config set <key> <value> [-g|--global]
- npm config get <key>
- npm config delete <key>
- npm config list
- npm config edit
- npm get <key>
- npm set <key> <value> [-g|--global]
对于 config 这块用得最多应该是设置代理, 解决 npm 安装一些模块失败的问题
例如我在公司内网, 因为公司的防火墙原因, 无法完成任何模块的安装, 这个时候设置代理可以解决
npm config set proxy= http://dev-proxy.oa.com:8080/
又如国内的网络环境问题, 某官方的 IP 可能被和谐了, 幸好国内有好心人, 搭建了镜像, 此时我们简单设置镜像
npm config set registry="http://r.cnpmjs.org" http://r.cnpmjs.org%22/ ;
也可以临时配置, 如安装淘宝镜像
npm install -g cnpm --registry= https://registry.npm.taobao.org/
npm cache 管理模块的缓存?
- npm cache add <tarball file>
- npm cache add <folder>
- npm cache add <tarball url>
- npm cache add <name>@<version>
- npm cache ls [<path>]
- npm cache clean [<path>]
最常用命令无非清除 npm 本地缓存 npm cache clean
npm start 启动模块 npm start [-- <args>]
该命令写在 package.json 文件 scripts 的 start 字段中, 可以自定义命令来配置一个服务器环境和安装一系列的必要程序, 如
- "scripts": {
- "start": "gulp"
- }
npm stop 停止模块?
npm stop [-- <args>]
npm restart 重新启动模块?
npm restart [-- <args>]
npm test 测试模块
- npm test [-- <args>]
- npm tst [-- <args>]
- "scripts": {
- "test": "gulp release"
- },
npm version 查看模块版本
来源: http://www.qdfuns.com/article/39453/bdc8c069e9488b9c992ae4ff01bc02af.html