问题标签 [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.
javascript - DOTENV 未正确读取变量
这是我的文件:
在我的 nodejs 应用程序中,
这打印:
我究竟做错了什么?
reactjs - 在 create-react-app 项目中使用 dotenv 文件而不弹出
我从事两个 react 项目,其中一个使用 create-react-app 并已被弹出,另一个是使用 create-react-app 的新项目(未弹出)。第一个(弹出的)使用自定义 dotenv 文件,它们运行良好。
我尝试将 dotenv 添加到第二个构建中使用自定义的 .env.something 文件,但没有成功(即使我使用 crossenv 指定了不同的环境,它也总是选择 .env.local,或者如果我调用 dotenv 它没有找到,大概是因为我没有在全球范围内安装它)?
有谁知道这是否可以在不弹出的情况下做到,如果可以,你能告诉我怎么做吗?我想尽可能避免弹出。
谢谢!
约翰
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"
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 有什么原因吗?
node.js - 如何将 lerna 与 dotenv 包一起使用?
我有一个使用 Lerna 管理的 monorepo。我需要使用多个环境变量来启动我的 Web 服务器。我启动服务器的 npm 脚本是:
我也在尝试使用dotenv
包来加载.env
文件的环境变量。因为,dotenv
纯粹是设置env vars的开发助手,所以我将它安装为devDependency
top package.json
。dotenv
利用 node.js 预加载脚本,如:node -r dotenv/config server_script.js
.
但是使用 Lerna,我不能再调用预加载脚本。有什么方法可以使用dotenv
withlerna
吗?或者,如何使用 lerna 运行预加载脚本?
here-api - 让 process.env 使用 HERE API 密钥
我正在构建一个 React 地理待办事项列表,类似于这个。我使用 Mapbox API 作为映射组件,但我想将其切换到 HERE 的 Map Image API。我已经在我的应用程序上设置了地图,但我想将我的app_id
和隐藏app_code
在.env
我之前创建的文件中。这可能吗?我知道也可以限制哪些域可以访问密钥/代码,但我想将密钥隐藏在.env
文件中以便安心。
这是我的.env
文件(当然没有密钥):
这是我将它引入我的应用程序的地方:
当我console.log
app_id
和app_code
时,他们都回来了undefined
。我以前从 Mapbox 获得的 API 密钥在我的.env
文件中运行良好,但我似乎无法以相同的方式从 HERE获取app_id
and 。app_code
我错过了什么吗?限制哪些域可以使用我的 id 和代码更容易吗?
reactjs - 无法访问 .env 中的变量键(dotenv 包 React)
所以我试图了解如何使用 .env 来保护我的登录身份验证的 api 密钥和数据。我已经遵循了 dotenv 包的过程和 stackoverflow 的答案。
我做了什么:
1. 我安装了 dotenv 包
2. 在我的根文件夹中,我添加了一个只有一行的 .env:
3. 在我的 App.js 中,我添加了以下行:
但是,console.log 返回“未定义”,这是为什么呢?我错过了什么?
reactjs - Dotenv-webpack 在生产中?
我正在尝试使用该dotenv-webpack
插件。这在当地很有效。但是当我部署到 Heroku 时失败了。
我已根据此git issue遵循建议,但仍有问题。
我的 webpack 配置如下所示:
我期望在dotenv
上面编写插件的位置,它将.env
在构建时解析我的文件(与 webpack.config 一起位于项目的根目录),从而使我的项目可以访问 env vars。相反,环境变量是undefined
, 在 Heroku 中。我在 Heroku 中设置了一个 env var。密钥设置为类似SECRET_KEY
. 值设置为类似123456
. 谁能给我一些见解?
node.js - 如何向 .env 文件添加注释?
我正在使用dotenv
模块从.env
文件中加载环境变量。
.env
:
如您所见,我在.env
文件中添加了两条注释。
dotenv.js
:
require('dotenv').config({ debug: process.env.DOTENV_DEBUG === 'true' });
dotenv
给我调试信息:
我知道收到这些调试消息的原因是我在.env
文件中添加了两条注释和一些新行。dotenv
无法.env
正确解析文件。
我该如何解决这个问题?
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
控制台中有什么,这就是它所显示的
我怎样才能解决这个问题?我不明白为什么它不能将值作为字符串获取?