npm基础

前言

简单介绍node的npm相关的知识,环境是window7、node(v6.2.0)、npm(v3.8.9)。

npm 配置类型以及优先级

1.命令行参数:

1
$ npm install xxx --save --proxy http://server:port

2.环境变量: 以 npmconfig 为前缀的环境变量将会被认为是npm的配置属性。

1
npm_config_proxy=http://server:port

3.用户配置文件:可以通过 npm config get userconfig 查看文件路径。

1
2
$ npm config get userconfig
C:\Users\Administrator\.npmrc

4.全局配置文件。可以通过 npm config get globalconfig 查看文件路径。

1
2
$ npm config get globalconfig
C:\Users\Administrator\AppData\Roaming\npm\etc\npmrc

5.内置配置文件。安装npm的目录下的npmrc文件。

6.默认配置。 npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。

npm 全局环境变量配置

例如我希望将npm的“全局模块的存放路径”以及“cache的路径”两个文件夹放在NodeJS的主目录下,如下图:

1.在NodeJs下建立”node_global”及”node_cache”两个文件夹。执行如下命令:

1
2
$ mkdir node_global
$ mkdir node_cache

2.设置.npmrc文件配置项。接着执行如下命令:

1
2
$ npm config set cache "D:\B-Soft\Node\node_cache"
$ npm config set prefix "D:\B-Soft\Node\node_global"

查看“用户配置文件”中的.npmrc,如下图:

3.增加NOEDE_PATH(全局变量模块存放位置)

  • “我的电脑”右键“属性”-“高级系统设置”-“高级”-“环境变量”,进入环境变量对话框,进行如下设置:

在“系统变量”下新建”NODE_PATH”,输入”D:\B-Soft\Node\node_global\node_modules”。

在“用户变量”的”PATH”后面添加“D:\B-Soft\Node\node_global”。

  • 否则在使用module的时候会导致输入命令出现“xxx不是内部或外部命令,也不是可运行的程序或批处理文件”这个错误

4.测试(以安装babel-cli为例:Babel提供babel-cli工具,用于命令行转码。)

它的安装命令如下:

1
$ npm install --global babel-cli

  • 检查babel-cli是否安装在全局模块“D:\B-Soft\Node\node_global”,如下图:

  • 检查babel-cli是否可用,输出版本号就表示babel模块安装成功并可用
    1
    2
    $ babel version
    6.18.0 (babel-core 6.18.2)

npm 代理设置

1.基本设置

1
2
$ npm config set proxy http: //server :port
$ npm config set https-proxy http: //server :port

2.其它认证设置

1
2
$ npm config set proxy http: //username :password@server:port
$ npm config set https-proxy http: //username :pawword@server:port

npm 相关问题

1.错误:“moudle不是内部或外部命令,也不是可运行的程序或批处理文件”

2.错误:出现npm config set prefix “xxx” 或者 npm config set cache “xxx”,一直没反应。

  • 解决:检查在设置.npmrc文件配置项是否有错误,比如路径错误
文章目录
  1. 1. 前言
  2. 2. npm 配置类型以及优先级
  3. 3. npm 全局环境变量配置
  4. 4. npm 代理设置
  5. 5. npm 相关问题
|