美文网首页让前端飞前端开发笔记
Node 项目通过 .npmrc 文件指定依赖安装源

Node 项目通过 .npmrc 文件指定依赖安装源

作者: 后除 | 来源:发表于2022-12-10 23:09 被阅读0次

    背景

    npm 命令运行时,往往通过命令行指定相关配置,最常用的便是使用 --registry 来指定依赖的安装源。

    npm install --registry=https://registry.npmmirror.com
    

    同样的效果也可以使用 .npmrc 来实现:

    registry=https://registry.npmmirror.com
    

    .npmrc 用法介绍

    .npmrc(NPM Running Configuration)可以指定 npm 命令运行时的配置内容,其中可以设置的配置见官方文档:config

    配置优先级按顺序如下:

    1. 项目内的配置文件(/path/to/my/project/.npmrc
    2. 用户配置文件(~/.npmrc
    3. 全局配置文件($PREFIX/etc/npmrc
    4. NPM 内置配置文件(/path/to/npm/npmrc

    .npmrc 文件内以键值对的形式(key=value)设置值:

    key=value
    

    数组:

    key[]=value
    key[]=value
    

    使用 #; 来注释:

    # Comment1
    ; Comment2
    key=value
    

    指定安装源

    由于项目下的 .npmrc 优先级最高,并且配置文件只对此项目有效,不会影响其他项目。可以在项目根目录下面新建一个 .npmrc 文件指定安装源。

    修改默认 registry

    registry=https://registry.npmmirror.com
    

    @scope 的依赖包从 https://scope.example.com 安装,其他从 https://registry.npmmirror.com

    registry=https://registry.npmmirror.com
    @scope:registry=https://scope.example.com
    

    设置 SASS 镜像源,效果与 SASS_BINARY_SITE=https://registry.npmmirror.com/-/binary/node-sass npm install node-sass 相同:

    sass_binary_site=https://registry.npmmirror.com/-/binary/node-sass
    

    案例代码:https://github.com/mazeyqian/mazey/blob/master/.npmrc

    NPM 配置快捷命令

    获取当前配置指定值:

    npm config get sass_binary_site
    # https://registry.npmmirror.com/-/binary/node-sass
    
    npm config get registry
    # https://registry.npmmirror.com
    

    设置配置指定值:

    npm config set example_key_1 example_value_1
    npm config get example_key_1
    # example_value_1
    

    显示配置列表:

    npm config list
    
    ; userconfig
    example_key_1 = "example_value_1"
    registry = "https://registry.npmjs.org/"
    

    注意

    如果想发布 NPM,一定要注意修改 registry 至你想发布的地址,切勿将公司私有包发布到官方库中。

    If you then want to publish a package for the whole world to see, you can simply override the --registry option for that publish command.

    参考

    1. 淘宝 npm 域名即将切换 && npmmirror 重构升级
    2. Can I run my own private registry?
    3. 解决 NPM 安装 node-sass 因为网络问题超时失败的问题

    版权声明

    本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/2950.html

    (完)

    相关文章

      网友评论

        本文标题:Node 项目通过 .npmrc 文件指定依赖安装源

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