[英]Environment variables not changing in Node.js
set NODE_ENV=production
在我的电脑上不起作用。 NODE_ENV
没有从“开发”改变
if(app.get('env') === 'development'){ app.use(morgan('tiny')); console.log("Morgan enabled..."); }
set PORT=5000
不起作用 - PORT
没有从“3000”改变。
const port = process.env.PORT || 3000; app.listen(port, () => console.log(`Listening on port ${port}...`));
作为 Windows 用户,我过去在导出/设置 node 使用的环境变量时遇到了问题。
我最终使用了dotenv
NPM 包,因为无论您在什么系统上开发,您都可以确保它正确加载了环境变量。
Dotenv 是一个零依赖模块,它将环境变量从 .env 文件加载到 process.env 中。
首先,安装并保存它:
npm i dotenv
在项目的根目录中创建一个名为.env
PORT=5000
您可以使用简单的X=Y
语法设置任意数量的变量。
然后,在您的代码中的某处:
require('dotenv').config();
// my main application code
通过上面的示例,您现在可以访问process.env.PORT
,它等于5000
(从.env
文件设置的值)
注意:通过添加.gitignore
规则避免将.env
存储在您的版本控制中:
node_modules/
# Other ignore rules...
# Add this line
.env
祝你好运!
您应该通过yarn add dotenv
安装 dotenv 然后将文件创建到服务器中的文件夹 .env 或应用程序的主页添加此代码
const dotenv=require('dotenv').config({path:'./env})
//这取决于你在哪里存储 .env 和路径的名称文件以及文件 .env make variable PORT=3000
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.