美文网首页一入前端深似海
npm 默认全局、缓存路径及国内镜像地址修改

npm 默认全局、缓存路径及国内镜像地址修改

作者: Anyers | 来源:发表于2020-05-25 22:26 被阅读0次

    Windows 10 下安装 node v12.16.3 (npm v6.14.4) 后,使用以下命令可以查看 npm 的配置信息(默认的全局及缓存位置、数据源等)

    npm config ls
    
    ## 更多npm命令可以自行尝试
    # npm <command> -h      查看对应命令的帮助
    # npm -l                查看所有指令
    # npm help              查看帮助
    # npm help npm          打开npm本地帮助文件
    

    默认全局及缓存位置如下:

    C:\Users\[用户名]\AppData\Roaming\npm              # 通过命令 npm config get prefix 获取
    C:\Users\[用户名]\AppData\Roaming\npm_cache        # 通过命令 npm config get cache 获取
    

    默认registry地址如下:

    https://registry.npmjs.org/                       # 通过命令 npm config get cache 获取
    

    修改全局、缓存地址

    命令修改

    npm config set prefix "新制定的全局路径,如:D:\tools\node\npm_global"
    npm config set cache "新制定的缓存路径,如:D:\tools\node\npm_cache"
    
    # 使用 npm config ls 命令查看是否修改成功
    

    .npmrc 配置文件修改

    使用文本编辑器(如:Visual Studio Code、Sublime Text、Nodepad++等,不推荐使用记事本打开)打开 C:\Users\[用户名]\.npmrc 用户配置文件(不存在则自行创建),添加以下内容:

    prefix=D:\tools\node\npm_global
    cache=D:\tools\node\npm_cache
    

    保存退出即可生效。

    验证

    配置完成后可以通过 npm 全局安装命令,验证是否修改成功,如:npm install -g nrm 命令安装 nrm
    安装完成后,可以在新配置的全局路径内看到新安装的内容,但此时在命令行执行 nrm -v 命令时,会出现 “ 'nrm' 不是内部或外部命令,也不是可运行的程序或批处理文件。” 错误提示。

    此处因修改了全局安装路径,则需要修改环境变量

    1. 环境变量中新建变量 NODE_PATH , 变量值为 D:\tools\node\npm_global
    2. path变量中新增条目 %NODE_PATH%

    设置完成后,重启命令行窗口,即可成功执行上面命令。


    修改 npm 镜像源

    命令修改

    # 全局使用时设置
    npm config set registry http://registry.npm.taobao.org/  #淘宝镜像源 
    
    # 临时使用时设置
    # npm i [包名] --registry=https://registry.npm.taobao.org
    
    # 切回原镜像 npm config set registry https://registry.npmjs.org
    

    .npmrc 配置文件修改

    .npmrc 用户配置文件,添加以下内容:

    registry=http://registry.npm.taobao.org/
    
    ## 使用以下命令查看是否修改成功
    # npm config get registry
    

    保存退出即可生效。

    多镜像地址管理工具 nrm

    nrm (全称:NPM registry manager), 用于管理多个镜像源地址,通过命令进行切换(简化 npm config set registry xxx 命令)。

    nrm内置一下镜像源:

    URL 主页
    npm https://registry.npmjs.org/ https://www.npmjs.com/
    cnpm http://r.cnpmjs.org/ https://cnpmjs.org/
    taobao https://registry.npm.taobao.org/ https://npm.taobao.org/
    npmMirror https://skimdb.npmjs.com/regi... https://skimdb.npmjs.com/
    nj (Fetch Error) https://registry.nodejitsu.com/ https://www.nodejitsu.com/
    rednpm http://registry.mirror.cqupt.... http://npm.mirror.cqupt.edu.cn/
    edunpm(Fetch Error) http://registry.enpmjs.org/ http://www.enpmjs.org/

    其它包管理器

    • yarn - Facebook 包管理器
    • pnpm - 开源包管理工具
    • cnpm - 阿里定制的命令行工具

    相关文章

      网友评论

        本文标题:npm 默认全局、缓存路径及国内镜像地址修改

        本文链接:https://www.haomeiwen.com/subject/klfpahtx.html