问题标签 [dotenv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
477 浏览

javascript - DOTENV 未正确读取变量

这是我的文件:

在我的 nodejs 应用程序中,

这打印:

我究竟做错了什么?

0 投票
1 回答
367 浏览

reactjs - 在 create-react-app 项目中使用 dotenv 文件而不弹出

我从事两个 react 项目,其中一个使用 create-react-app 并已被弹出,另一个是使用 create-react-app 的新项目(未弹出)。第一个(弹出的)使用自定义 dotenv 文件,它们运行良好。

我尝试将 dotenv 添加到第二个构建中使用自定义的 .env.something 文件,但没有成功(即使我使用 crossenv 指定了不同的环境,它也总是选择 .env.local,或者如果我调用 dotenv 它没有找到,大概是因为我没有在全球范围内安装它)?

有谁知道这是否可以在不弹出的情况下做到,如果可以,你能告诉我怎么做吗?我想尽可能避免弹出。

谢谢!

约翰

0 投票
4 回答
12058 浏览

next.js - nextjs 中未加载 dotenv 值

我正在努力将我的.env文件加载到我的 NextJS 应用程序中。这是我的代码:

.env在根/
index.js/pages/index.js

这是我的index.js

我观察到我可以在函数中打印出.env内容render(),但我不能在uploadCSV函数中这样做。

供您参考:

  • 使用只是require("dotenv").config()不起作用
  • 使用require("dotenv").config({path: "../"})不起作用

更新

我的env-config.js

我的 babel.config.js:

我的package.json

错误:

模块构建失败(来自 ./node_modules/next/dist/build/webpack/loaders/next-babel-loader.js):

TypeError:MemberExpression 预期节点的属性属性为 ["Identifier","PrivateName"] 类型,但得到了 "StringLiteral"

0 投票
6 回答
14327 浏览

reactjs - 无法在客户端访问 gatsby 环境变量

我设置 .env 文件和 gatsby-config.js 如下。

虽然什么时候运行gatsby develop,它显示了所有的环境变量,包括GATSBY_API_URL: 'https://example.com/api',但是浏览器上没有环境变量。

我想我按照https://www.gatsbyjs.org/docs/environment-variables/的说法,并GATSBY_在 var 中添加了前缀。

我在客户端看不到 env var 有什么原因吗?

0 投票
1 回答
5067 浏览

node.js - 如何将 lerna 与 dotenv 包一起使用?

我有一个使用 Lerna 管理的 monorepo。我需要使用多个环境变量来启动我的 Web 服务器。我启动服务器的 npm 脚本是:

我也在尝试使用dotenv包来加载.env文件的环境变量。因为,dotenv纯粹是设置env vars的开发助手,所以我将它安装为devDependencytop package.jsondotenv利用 node.js 预加载脚本,如:node -r dotenv/config server_script.js.

但是使用 Lerna,我不能再调用预加载脚本。有什么方法可以使用dotenvwithlerna吗?或者,如何使用 lerna 运行预加载脚本?

0 投票
1 回答
329 浏览

here-api - 让 process.env 使用 HERE API 密钥

我正在构建一个 React 地理待办事项列表,类似于这个。我使用 Mapbox API 作为映射组件,但我想将其切换到 HERE 的 Map Image API。我已经在我的应用程序上设置了地图,但我想将我的app_id和隐藏app_code.env我之前创建的文件中。这可能吗?我知道也可以限制哪些域可以访问密钥/代码,但我想将密钥隐藏在.env文件中以便安心。

这是我的.env文件(当然没有密钥):

这是我将它引入我的应用程序的地方:

当我console.log app_idapp_code时,他们都回来了undefined。我以前从 Mapbox 获得的 API 密钥在我的.env文件中运行良好,但我似乎无法以相同的方式从 HERE获取app_idand 。app_code

我错过了什么吗?限制哪些域可以使用我的 id 和代码更容易吗?

0 投票
2 回答
7785 浏览

reactjs - 无法访问 .env 中的变量键(dotenv 包 React)

所以我试图了解如何使用 .env 来保护我的登录身份验证的 api 密钥和数据。我已经遵循了 dotenv 包的过程和 stackoverflow 的答案

我做了什么:

1. 我安装了 dotenv 包

2. 在我的根文件夹中,我添加了一个只有一行的 .env:

3. 在我的 App.js 中,我添加了以下行:

但是,console.log 返回“未定义”,这是为什么呢?我错过了什么?

0 投票
4 回答
12031 浏览

reactjs - Dotenv-webpack 在生产中?

我正在尝试使用该dotenv-webpack插件。这在当地很有效。但是当我部署到 Heroku 时失败了。

我已根据此git issue遵循建议,但仍有问题。

我的 webpack 配置如下所示:

我期望在dotenv上面编写插件的位置,它将.env在构建时解析我的文件(与 webpack.config 一起位于项目的根目录),从而使我的项目可以访问 env vars。相反,环境变量是undefined, 在 Heroku 中。我在 Heroku 中设置了一个 env var。密钥设置为类似SECRET_KEY. 值设置为类似123456. 谁能给我一些见解?

0 投票
3 回答
39022 浏览

node.js - 如何向 .env 文件添加注释?

我正在使用dotenv模块从.env文件中加载环境变量。

.env

如您所见,我在.env文件中添加了两条注释。

dotenv.js

require('dotenv').config({ debug: process.env.DOTENV_DEBUG === 'true' });

dotenv给我调试信息:

我知道收到这些调试消息的原因是我在.env文件中添加了两条注释和一些新行。dotenv无法.env正确解析文件。

我该如何解决这个问题?

0 投票
4 回答
3150 浏览

javascript - Dotenv 没有以字符串形式获取值

我已经安装了 dotenv 来为开发和生产设置环境变量,其中一个变量是ROOT_API,我的 env 文件看起来像这样

我在 axios 中设置了我的 api 请求配置,并像这样按照 dotenv repo 中的步骤进行操作

我希望process.env.ROOT_API将值作为字符串返回,但是在控制台中,Uncaught SyntaxError: Unexpected token :当我看到问题出在哪里时,我会看到错误,值显示为

我努力了

  • .env在文件中使用不同的引号
  • 将值转换process.env.ROOT_API为字符串或记录值的类型,但SyntaxError: missing ) after argument list由于值看起来像 js 中的纯文本,所以会出错。
  • 使用这样的模板文字${process.env.ROOT_API};显示在console > sources '' + http://localhost/project/public/; //我不知道如何显示`引号它显示它像代码对不起。

我做了一个console.log看看process.env控制台中有什么,这就是它所显示的

我怎样才能解决这个问题?我不明白为什么它不能将值作为字符串获取?