我运行“npm run backend”后的错误消息。
.env 文件中的代码 -
PORT=5000
MONGO_URI='mongodb://127.0.0.1:27017/test'
**index.js 文件中的代码 - **
// packages
import path from "path";
import express from "express";
import dotenv from "dotenv";
import cookieParser from "cookie-parser";
// Utiles
import connectDB from "./config/db.js";
dotenv.config();
const port = process.env.PORT || 5000;
connectDB();
const app = express();
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser());
app.get("/api/config/paypal", (req, res) => {
res.send({ clientId: process.env.PAYPAL_CLIENT_ID });
});
app.listen(port, () => console.log(`Server running on port: ${port}`));
**db.js 文件中的代码 - **
import mongoose from "mongoose";
const connectDB = async () => {
try {
console.log(process.env.MONGO_URI); // Add this line
await mongoose.connect(process.env.MONGO_URI);
console.log(`Successfully connected to MongoDB 👍`);
} catch (error) {
console.error(`ERROR: ${error.message}`);
process.exit(1);
}
};
export default connectDB;
.env 和 db.js 在 config 文件夹中,index.js 在 utils 文件夹中
目前正在学习react和javascript。我通过在线观看教程然后创建自己的项目来学习。
我尝试在 db 文件中输出“成功连接到 MongoDB 👍”,但收到 URI 错误。
我尝试通过控制台日志打印 process.env.MONGO_URI ,但它打印未定义。我真的需要帮助和解释为什么它不起作用
为了让自己的生活更轻松,请遵循默认的文档并将您的
.env
文件移动到根目录中,然后按如下方式更新:
import path from "path";
import express from "express";
import "dotenv/config"; //< Change to this
import cookieParser from "cookie-parser";
// Utiles
import connectDB from "./config/db.js";
const port = process.env.PORT || 5000;
await connectDB(); //< top level await
//...