我目前在我的nodejs项目和reactjs项目中使用dotenv库。
我有一个.env文件,当我具有如下所示的值时,它可以完美工作
PORT=80
API_URL=https://api.com:8080
但是,我试图使os环境变量在此文件中可用,例如,如果我的.bashrc文件中包含以下内容:
DATABASE_HOST=localhost
DATABASE_PASSWORD=password
是否可以在.env文件中打印os环境变量?类似于Spring boot application.properties文件的
NODEJS_DB_HOST=${DATABASE_HOST}
感谢您的帮助
答案 0 :(得分:0)
我认为dotenv不能让您这样做。
如果签出dotenv's main.js file,似乎只是根据.env文件中的字符串值填充了process.env。它不会查找那些字符串值以查看它们是否在您的操作系统环境中定义。
您最好的选择是维护一个.env文件or to pass environment variables through the command line - Twilio has a nice example that illustrates this。
答案 1 :(得分:0)
来自终端的变量已加载到process.env
,您无需将它们添加到.env
文件中,因为它们已经在process.env
中。了解您要使用它实现的目标。 :-)
您忘记了export
文件中的~/.bashrc
。
~/.bashrc
export VARIABLE=value
.bashrc
:source ~/.bashrc
process.env
并检查变量是否在那里。您还可以检查dotenv-expand:https://www.npmjs.com/package/dotenv-expand