我开始从事一个项目,该项目有一些需要保护的 API key 。我的个人项目都是使用 React 和 Node,但是这个项目是使用 yarn(我不熟悉)构建的。我已经运行了 yarn add dotenv
,并且尝试使用他们的文档来启动和运行它。所有 console.log(process.env.***)
都返回 undefined
。
到目前为止,我的方法是将我的变量添加到项目根目录中的 .env 文件中,并将 require('dotenv').config()
添加到项目的 application.js
要加载的文件。我读到 Vue.js 3 不需要 dotenv,而是使用变量名前的 _VUE_APP(我试图确保它在 Vue 2.8 中不会那样工作。剧透,它不会)。
有没有我遗漏的步骤?我应该采取完全不同的方法吗?
提前致谢!
最佳答案
假设您有两个环境:开发 和生产。
为了拥有这些环境的变量,在根文件夹中为每个环境创建一个文件(package.json
或 .gitignore
在哪里),一个名为.env.development
和另一个名为 .env.development
,然后在那里创建变量。
例如,假设我们想要一个名为 api-path 的环境变量,因此在每个名为 VUE_APP_API_PATH 的文件中创建一个变量(例如在开发环境 VUE_APP_API_PATH = http://localhost:3000
).
然后,您可以在需要此值的脚本中使用 let API_route = process.env.VUE_APP_ROOT_API
检索这些环境值。
更多信息在这里:https://cli.vuejs.org/guide/mode-and-env.html#environment-variables
希望对您有所帮助。
关于ruby-on-rails - 如何使用 Vue 前端和 Rails 后端实现 env 变量?是否需要使用 dotenv 包来完成这个任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58545797/
相关文章:
amazon-web-services - Cloudwatch 中未显示 Cognito 的指标
azure - 服务主体帐户本地 AD Connect 同步
postgresql - 通过 EC2 从 sqlalchemy 连接 AWS RDS
python - 在 Python 中打印大型 JSON 文件的前几行
haskell - Cabal/Stack 忽略自定义安装脚本的 ghc-options
javascript - 如何使用 yarn 将 NodeJS/React 应用程序部署到 Hero