npm 你需要了解的知识点

npm (node package manager)是javascript包管理器,它方便使用javascript的开发者分享、重用、更新代码。截止 2016-8-20号 已经拥有超过了32万的资源包!在日常开发中我们最常用的就是使用npm 安装、卸载资源包,一旦npm 安装成功后一切就变得非常简单。下面介绍下有用但是不太常用的知识点(windows环境)。

官网:https://www.npmjs.com/

安装、更新 npm

使用npm 首先你要先安装nodejs,如果要安装nodejs 请移步 nodejs官网
安装和更新npm 都是使用如下命令:

1
$ npm install npm -g

更改 npm 的缓存、全局包文件夹

npm 安装完成后,除了会在nodejs 安装目录中多出一个 npm 目录外,还有两个文件夹比较特别,这两个文件夹不在nodejs 的安装目录下(我的是在C:\Users\Administrator\AppData\Roaming\下)。这两个文件夹分别是:

  • npm-cache:缓存模块安装目录
  • npm:全局模块安装目录

随着通过npm 安装的包的增加 npm-cache、npm 中的文件将不断地增大(我本地已经几百兆),有必要将这两个文件夹转移到非C盘的磁盘中。

改变npm-cache 的目录

获取 npm-cache 目录路径

1
$ npm config get cache

通过命令修改npm-cache 的目录地址(以D盘为例,按需求自行修改)

1
$ npm config set prefix "D:\Program Files\npm-global"

改变npm 的目录

我们可以通过命令获取 npm 目录的路径

1
$ npm config get prefix

修改 npm 的目录地址

1
$ npm config set cache "D:\Program Files\npm-cache"

修改完成后,我们是无法正常使用已经安装的全局包的,需要修改‘PATH’环境变量:“电脑>属性>高级>环境变量”,环境变量需要增加npm 目录的地址。如:D:\Program Files\npm-global
如果要使修改立即生效,你需要重启电脑,如果你不想重启你可参考这里,或者自行搜索。

更新本地包

检查本地有哪些本地包,首先你要cd 到你想要检查的目录下,然后

1
$ npm outdated

那么会列出需要更新的包的信息,需要更新的包的名称、当前版本号、最新的版本号等。
图片描述

更新全部

1
$ npm update

然后通过命令验证是否更新

1
$ npm outdated

部分更新

如果你只是想更新某一个包到指定的版本,那么你可以直接通过命令修改。如果这个包在package.json 的dependencies 节点下,使用:

1
$ npm install grunt@1.0.1 --save

如果在package.json 的devDependencies下使用:

1
$ npm install grunt@1.0.1 --save-dev

然后通过命令验证是否更新

1
$ npm outdated

更新全局包

检查全局包是否有更新

1
$ npm outdated -g --depth=0

如果有会呈现如下的信息(以我的为例)

图片描述

全部更新

1
$ npm update -g

部分更新

1
npm install -g webpack

未完待续(会继续补充)……