nex*_*186 2 directory environment-variables node.js
我有一个名为 app.js 的 Node.js 应用程序,它存储在目录 B 中。
要正确运行此脚本,它需要环境变量。这些存储在名为 .env 的文件中,该文件也在目录 B 中。
在我的 app.js 中,环境变量是通过加载的,require("dotenv").config();
然后我可以使用例如访问它们process.env.SOME_VAR
因此,如果我当前位于目录 B 中,则可以直接使用node app并且我的应用程序将执行得很好。
但是,如果我转到父目录 A 并尝试通过以下方式运行我的应用程序
node ./B/app
它不会执行,因为它似乎无法访问 .env 文件的环境变量。
所以,我的问题是,如果我想将 .env 文件保留在同一目录中,如何从其父文件夹运行我的脚本?
小智 5
您可以使用dotenv加载环境变量的内容,即
const dotenv = require('dotenv');
// ...
// Then go ahead to load the .env file content into process.env
dotenv.config({ path: '/full/custom/path/to/your/env/vars' });
Run Code Online (Sandbox Code Playgroud)