npmnpm入门


备注

npm是Node.js的默认包管理器。它完全用JavaScript编写,允许在注册表中安装和分发大多数JavaScript模块。包以CommonJS格式处理,并且可以通过package.json文件的存在来识别。

版本

发布日期
V4.0.0 2016年10月21日
v3.10.0 2016年6月17日
v3.9.0 2016年5月6日
v2.15.0 2016年3月11日
v3.8.0 2016年2月26日
v3.7.0 2016年1月29日
V3.6.0 2016年1月21日
V3.5.0 二零一五年十一月二十零日
v3.4.0 2015年11月6日
3.3.0 2015年8月14日
v2.14.0 2015年8月14日
V3.2.0 2015-07-25
V3.1.0 2015年7月3日
v2.13.0 2015年7月3日
V3.0.0 2015年6月26日
v2.12.0 2015年6月19日
v2.11.0 2015年5月22日
v2.10.0 2015-05-07
v2.9.0 2015年4月24日
V2.8.0 2015年4月10日
V2.7.0 2015年2月27日
V2.6.0 2015年2月13日
V2.5.0 2015年1月30日
V2.4.0 2015年1月23日
V2.3.0 2015年1月16日
V2.2.0 2015年1月9日
V2.1.0 2014年9月26日
V2.0.0 2014年9月13日
V1.4.0 2014年2月13日

安装包

请注意,可以安装软件包此命令将安装命名软件包的最新可用版本:

本地或全球。

本地安装意味着npm将您的软件包安装在当前工作目录中。节点模块进入./node_modules ,可执行文件进入./node_modules/.bin/ 。通常,您需要在程序中安装本地模块作为依赖项,并且它们仅适用于安装它们的位置。

npm install <package names> 
 

速记:

npm i <package names>
 

npm 可以通过各种有用的方式与当前目录中的package.json 文件进行交互,通过存储在package.json 的对象dependenciesdevDependencies (安装多个模块):

没有参数的npm install 命令

npm install 
 

使用由对象值指示的语义版本控制限制,在package.json 中的dependenciesdevDependencies 对象中安装所有名为object key的package.json

开发新软件时:

使用选项-S 附加<package names> 和正在安装的npm模块的版本,这些模块应始终包含在模块中。安装后,附加到package.json 文件中跟踪的dependencies 列表。

npm i <package names> -S
 

使用选项-D 附加正在安装的npm模块的<package names> 和版本,这些模块是其他开发人员进一步开发或测试模块所需的。安装后,附加到package.json 文件中跟踪的devDependencies 列表中。

npm i <package names> -D
 

其中lodashmocha 是包名。

安装或设置

安装

npmNode.js捆绑在一起,所以如果你安装了Node.js,你也会自动安装npm 。您可以选择CurrentLTS版本

视窗

对于Microsoft Windows,您可以从https://nodejs.org/en/download/下载MSI安装程序

OS X.

对于Apple OS X,您可以从同一位置https://nodejs.org/en/download/下载PKG安装程序

Linux的

对于Linux,您可以使用包管理器来安装Node.js和npm。

你也可以从源代码编译Node.js,你仍然可以获得npm 。还有一个可以运行的脚本将安装npm

curl -L https://www.npmjs.com/install.sh | sh
 

将npm升级到最新版本

更新npm 安装的推荐方法是简单地安装npm

npm install -g npm@latest
 

您也可以升级到当前的LTS版本而不是最新版本:

npm install -g npm@lts
 

您还可以使用nvm 安装任何版本的Node(和npm)。使用npmnvm 安装全局安装时,您不需要使用sudo (或在Windows上以管理员身份运行)。

安装全局包

安装全局包

全局安装的软件包将模块放在{prefix}/lib/node_modules ,并将可执行文件放在{prefix}/bin ,其中{prefix} 通常类似于/usr/local 。安装全局模块意味着它的二进制文件最终会出现在PATH 环境变量中。通常,如果它是命令行工具,或者您想要在shell中使用的东西,则通常需要安装全局模块。

npm install --global package-name
 

删除全局包

npm uninstall --global package-name
 

注意: - --global 参数可以简化为-g 。因此,例如,第一个命令可能是npm install -g package-name ,结果完全相同。

注意:在* nix系统中,安装全局包可能需要超级用户权限。如果不这样做将失败: EACCES 。在这种情况下,运行:

sudo npm install --global package-name
 

更新包

在每个应用程序中,生命周期都需要更新其组件。每个人都知道逐个更新每个依赖的痛苦。那么你需要发出命令:

npm update (-g)
 

如果“-g”在那里,那么npm将更新全局包。

使用npm来管理依赖项

那么您想将您的应用部署到多个站点?并且您的项目有太多依赖项来逐个安装它们? Npm有一个解决方案只需发出以下命令:

npm init
 

在项目的根文件夹中,然后按照屏幕上的说明(键入所需的值,然后按Enter键),然后如果要保存依赖项,则添加:

--save
 

在你之后

npm install
 

命令例如:

npm install mypackagename --save
 

然后保存该依赖项,然后您不必移动“node_modules”文件夹。为了安装所有已保存的依赖项问题:

npm install
 

并将安装所有已保存的依赖项。