一、npm的配置管理。
参考:http://www.cnblogs.com/huang0925/archive/2013/05/17/3083207.html
?
?(1)、针对npm配置的命令行操作如下(可使用命令npm help config查询):
npm config set <key> <value> [--global] npm config get <key> npm config delete <key> npm config list npm config edit npm get <key> npm set <key> <value> [--global]
? 在设置配置属性时属性值默认是被存储于用户配置文件中,如果加上--global,则被存储在全局配置文件中。
?
?(2)、在使用npm命令时候,获取配置属性有6种方式,优先级从1-6如下列表:
? ?1.命令行参数。在命令中加入--key value即可,如添加http代理:--proxy http://server:port。
? ?2.环境变量。以npm_config_“key”为前缀的环境变量被认为是npm的配置属性。如设置proxy可以加入这样的环境变量:npm_config_proxy=http://server:port。
? ?3.当前用户配置文件。
npm config get userconfig ----- 获取当前用户文件路径
? ? 通过命令npm config set key value保存到用户配置文件中。
? ?4.全局配置文件。
npm config get globalconfig ---------- 获取全局文件路径
? ? 通过命令npm config set key value --global保存到全局配置文件中。
? ?5.内置配置文件。安装在npm目录下的npmrc文件。
? ?6.默认配置。npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。
?
? (3)、如果查看npm的所有配置属性。
npm config ls -l 【注意:以;开头的为注释。】
?
二、由于国内网络的种种限制问题,直接运行npm install xxx安装模块支持的时候,有时会出现网络卡断,下载失败的情况,解决办法有2种:
(1)、通过代理服务器
? ? 前提说明: 配置http/https代理的方式结构参考(一)。这里要说明的是,如果需要用户名和密码认证的话,需要这样设置:?
npm config set proxy http://username:password@server:port npm config set https-proxy http://username:password@server:port
? ? ?a>通过代理安装命令:
npm config set proxy http://server:port; npm install express (-g);
? ? ?b>或者直接执行命令:
npm --proxy http://server:port install express (-g)
?
(2)、通过国内镜像地址(有网友自己搭建的npm资源库),可以绕过某些不必要的网络问题。如:http://registry.npmjs.vitecho.com(未测试可用性) 或者http://npm.stdyun.com(可用)。
npm --registry http://npm.stdyun.com install (-g) express
?
三、npm install xxx -g[全局安装] 和 不需要-g的区别。
?
1. npm install xxx -g 时, 模块将被下载安装到【全局目录】中。
【全局目录】通过 npm config set prefix "目录路径" 来设置。
全局目录的设置:
npm config set prefix "路径"
也可以配置环境变量:添加npm_config_prefix属性即可。
?
2. npm install xxx ,则是将模块下载到当前命令行所在目录。
?
四、npm的常用命令
参考:http://www.cnblogs.com/xiziyin/archive/2012/01/21/2328473.html
? ? ? ? ? ?http://hi.baidu.com/alimyself/item/3ba5200faba0c7c92f4c6b43
npm install xxx 安装模块 npm install xxx@1.1.1 安装1.1.1版本的xxx npm install xxx -g 将模块安装到全局环境中。 npm ls 查看安装的模块及依赖 npm ls -g 查看全局安装的模块及依赖 npm uninstall xxx (-g) 卸载模块 npm cache clean 清理缓存 npm help xxx 查看帮助 npm?view?moudleName?dependencies 查看包的依赖关系 npm?view?moduleNames 查看node模块的package.json文件夹 npm?view?moduleName?labelName 查看package.json文件夹下某个标签的内容 npm?view?moduleName?repository.url 查看包的源文件地址 npm?view?moduleName?engines 查看包所依赖的Node的版本 npm?help?folders 查看npm使用的所有文件夹 npm?rebuild?moduleName 用于更改包内容后进行重建 npm?outdated? 检查包是否已经过时,此命令会列出所有已经过时的包,可以及时进行包的更新 npm?update?moduleName 更新node模块
? 更多命令参考:https://npmjs.org/doc/
?