简介
NPM的全称是Node Package Manager,是随同NodeJS一起安装的包管理和分发工具。有了npm,就可以按需求快速进行下载、安装、上传以及管理已经安装的包。
常用命令
1. 安装模块
- node的安装分为
全局模式
和
本地模式
。- 一般情况下会以本地模式运行,Node包会被安装到和你的应用程序代码的本地
node_modules
目录下。- 在全局模式下,Node包会被安装到Node的安装目录下的
node_modules
下。
- 基本语法
- npm install (with no args, in package dir)
- npm install [<@scope>/]moduleName
- npm install [<@scope>/]moduleName@< tag >
- npm install [<@scope>/]moduleName@< version >
- npm install [<@scope>/]moduleName@< version range>
- npm install < tarball file>
- npm install < tarball url>
- npm install < folder>
- alias(别名): npm i
- common options(可选参数):
- [-S|–save]
- [-D|–save-dev]
- [-O|–save-optional]
- [-E|–save-exact]
- [–dry-run]
- 本地安装
npm install moduleName
:默认安装,一般会安装最新包
npm install moduleName@version
: 安装指定版本
- 全局安装
npm install --global moduleName
npm install -g moduleName
npm set global=true
:设定安装模式
npm get global
:查看当前使用的安装模式
- 可选参数
-s
or
--save
- 安装包信息将加入到dependencies(生产阶段的依赖)
安装的同时,将信息写入package.json中项目路径中如果有package.json文件时,直接使用npm install方法就可以根据dependencies配置安装所有的依赖包,这样代码提交到github时,就不用提交node_modules这个文件夹了。
- 举例
npm install gulp –save 或 npm install gulp -S
package.json 文件的 dependencies 字段:
“dependencies”: { “gulp”: “^3.9.1”}
-D
or
--save-dev
:安装包信息将加入到devDependencies(开发阶段的依赖),所以一般在开发阶段使用它
- 举例
npm install gulp –save-dev 或 npm install gulp -D
package.json 文件的devDependencies字段:
“devDependencies”: { “gulp”: “^3.9.1”}
-O
or
--save-optional
:安装包信息将加入到optionalDependencies(可选阶段的依赖)
- 举例
npm install gulp –save-optional 或 npm install gulp -O
package.json文件的optionalDependencies字段:
“optionalDependencies”: { “gulp”: “^3.9.1”}
-E
or
--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 --production
:安装dependencies,不包含devDependencies
npm install < package >
:默认使用–save参数,如果不想保存到package.json中,可以添加
--no-save
参数;还可以指定
–save-dev
或
-g
参数
2. 卸载模块
- 基础语法
- 基本语法:npm uninstall [<@scope>/]< pkg >[@< version >]
- 可选参数:[-S|–save|-D|–save-dev|-O|–save-optional]
- aliases(别名): remove, rm, r, un, unlink
- 举例
npm uninstall moduleName
:卸载node模块
npm uninstall moduleName -g
:卸载全局node模块
npm uninstall mouduleName --global
npm uninstall gulp --save-dev
:卸载开发版本的模块
npm uninstall < package >
:卸载依赖包, 默认使用–save参数,即从package.json中移除
3. 查看模块
npm view
npm view moduleNames
:查看node模块的package.json文件夹
npm view moduleName labelName
:查看package.json文件夹下某个标签的内容
npm view moudleName dependencies
:查看包的依赖关系
npm view moduleName repository.url
:查看包的源文件地址
npm view moduleName engines
:查看包所依赖的Node的版本
npm list
:查看当前目录下已安装的node包
npm list -g
:查看全局node包注意事项:Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容。
npm list parseable=true
:以目录的形式来展现当前安装的所有node包
4. 更新模块
npm update
:更新模块
- 基本语法:
npm update [<@scope>] [<pkg>...]
根据给定的scope,更新模块
npm oudated
: 检查模块是否过时
- 基本语法:
npm outdated [[<@scope>/]<pkg> ...]
此命令会列出所有已经过时的包,可以及时进行包的更新,其中
current
显示当前安装版本,
latest
显示依赖包的最新版本,
wanted
显示我们可以升级到可以不破坏当前代码的版本。
npm init
:在项目中引导创建一个package.json文件
- 基本语法:
npm init [-f|--force|-y|--yes]
npm init 在此目录生成package.json文件,可以添加-y | –yes 参数,默认所有配置为默认yes
此命令会让安装包的信息保持到项目的package.json文件中,以便后续的其它的项目开发或者他人合作使用,因此说package.json在项目中是必不可少的。
- 其他用法
npm ls [-g] [--depth=0]
:查看当前目录或全局的依赖包,可指定层级为0
npm ll[la] [--depth=0]
:查看依赖包信息
npm list < package >
:查看依赖的当前版本
4. 其他常用语句
npm rebuild moduleName
:用于更改包内容后进行重建
npm help folders
:查看npm使用的所有文件夹
npm help
:查看帮助命令
npm search packageName
:检验某个包名是否已存在(发布时使用)
npm root
:查看当前包的安装路径
npm root -g
:查看全局的包的安装路径
npm -v
:查看npm安装的版本
npm search < string >
:查找包含该字符串的依赖包
npm help json
:访问npm的json文件夹一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。 此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打开。
参考手册