首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不读取环境变量的npm配置文件

不读取环境变量的npm配置文件
EN

Stack Overflow用户
提问于 2019-04-05 21:07:09
回答 2查看 3.1K关注 0票数 0

我无法让我的项目.npmrc文件识别在三个不同范围(项目、用户、全局)设置的任何环境变量。

安装私有模块的唯一方法是将api键硬编码到.npmrc文件中,这显然是不能接受的,因为.npmrc是由git监视的。

我尝试过按照文档的建议创建环境变量,即:

  • 在项目.env文件中,.npmrc文件和.env文件都是package.json的同级文件,即:fontawesome_pro_token=ABC123
  • 在用户配置文件中,即:$ npm set fontawesome_pro_token ABC123
  • 在全局配置文件中,即:$ npm set fontawesome_pro_token ABC123 --global

当我在项目.npmrc文件中引用env变量时,即:

代码语言:javascript
复制
@fortawesome:registry=https://npm.fontawesome.com/
//npm.fontawesome.com/:_authToken=${fontawesome_pro_token}

我知道这个错误:

代码语言:javascript
复制
Error: Failed to replace env in config: ${fontawesome_pro_token}

当我移除变量名周围的大括号(正如此堆栈溢出响应建议的那样)时,我会得到以下错误:

代码语言:javascript
复制
npm ERR! 401 Unauthorized

关于如何配置npm以读取env变量的建议吗?

Incidentally --如果将私有模块部署到Netlify,则Netlify希望.npmrc文件使用env语法的大括号,参见这个要旨。我可以确认,在git监视的npmrc文件中使用curly大括号语法以及netlify项目管理仪表板中的设置build确实有效。

EN

回答 2

Stack Overflow用户

发布于 2022-06-15 16:51:21

使用您的env没有花括号,例如:

代码语言:javascript
复制
$fontawesome_pro_token
票数 1
EN

Stack Overflow用户

发布于 2019-05-01 00:40:31

当引用.env文件或处理环境变量时,将大写字母改为大写

@fortawesome:registry=https://npm.fontawesome.com/ //npm.fontawesome.com/:_authToken=${FONTAWESOME_PRO_TOKEN}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55543361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档