节点中未定义的服务器端口

Server port undefined in Node

我正在制作一个节点服务器 运行 它所以我从 dotenv 文件中获取未定义的值。

这是我的项目结构:

backend
       config
            config.env
       app.js
       server.js

这里是config.js的代码:

PORT = 5000

NODE_ENV = DEVELOPMENT

app.js:

const express = require('express')
const app = express();

module.exports = app

server.js:

const app = require('./app')
const dotenv = require('dotenv');

//setting up confg file
dotenv.config({path:'backend/config/config.env'})
app.listen(process.env.PORT,()=>{
    console.log(`server started on PORT:${process.env.PORT} in ${process.env.NODE_ENV} node.`)
})

这是输出:

server started on PORT:undefined in undefined node.

您犯的错误是在配置路径中,因为 server.js 在您需要使用的后端文件夹中

dotenv.config({path:'./config/config.env'}) 而不是 dotenv.config({路径:'backend/config/config.env'})

const app = require('./app')
const dotenv = require('dotenv');

//setting up confg file
dotenv.config({path:'./config/config.env'})
app.listen(process.env.PORT,()=>{
    console.log(`server started on PORT:${process.env.PORT} in ${process.env.NODE_ENV} node.`)
})