我正在尝试在节点js中设置和获取环境变量。
我创建了test.js
文件
并添加此行
console.log(process.env.NODE_ENV);
像这样运行
set NODE_ENV=production&&node test.js
它给了我未定义的
答案 0 :(得分:2)
NODE_ENV=production node test.js
在Linux上,$env:NODE_ENV = 'production'; node test.js
在Powershell中。
答案 1 :(得分:0)
1. create a package.json file.
2. install the dotenv npm package
make a .env file in your root directory.
//env
NODE_ENV=development
PORT=8626
# Set your database/API connection information here
API_KEY=**************************
API_URL=**************************
现在,如果您想在任何文件或server.js中调用端口,它将像这样。
const port = process.env.PORT;
console.log(`Your port is ${port}`);
答案 2 :(得分:0)
除了可接受的答案:
来自nodejs文档
可以修改此对象,但此类修改不会反映在Node.js进程之外。
因此,您还可以执行以下操作:
process.env.foo = 'bar';
console.log(process.env.foo);
在process.env上分配属性会将该值隐式转换为字符串。
process.env.test = null;
console.log(process.env.test);
// => 'null'
注意:有些env
变量只能在执行任何代码之前进行设置。
还请注意:
在Windows操作系统上,环境变量不区分大小写。
process.env.TEST = 1;
console.log(process.env.test);
// => 1