ruby-on-rails - 如何使用 Vue 前端和 Rails 后端实现 env 变量?是否需

我开始从事一个项目,该项目有一些需要保护的 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 文件的前几行

python - Jupyter 循环播放声音

python - 如何理解 4x4 混淆矩阵?

haskell - Cabal/Stack 忽略自定义安装脚本的 ghc-options

javascript - 如何使用 yarn 将 NodeJS/React 应用程序部署到 Hero

python-3.x - 模块错误 : Rasterio has no attribute open

azure-devops - "kubeconfig"选项的 Azure Devops kubern