javascript - ReferenceError: 没有使用 require("dotenv").config();
问题描述
出于某种原因,我遇到了这个错误“ReferenceError:require is not defined”,我不知道为什么?有谁知道我该如何解决这个问题?我正在尝试将我的电子商务网站连接到 mongodb
这是代码
.env 文件
PORT=5000
MONGO_URL = mongodb+srv://nashmaj:frzw14qa@cluster0.52b6h.mongodb.net/e-commerce-webapp?retryWrites=true&w=majority
server.js 文件
require("dotenv").config();
const express = require('express')
const app = express();
const mongoose = require('mongoose')
const cors = require('cors')
const fileUpload = require('express-fileupload')
const cookieParser = require('cookie-parser');
// const { Console } = require('console');
const PORT = process.env.PORT || 5000
app.use(express.json())
app.use(cookieParser())
app.use(cors)
app.use(fileUpload({
useTempFiles: true
}))
//connect to db
const URL = process.env.MONGO_URL
mongoose.connect({
useCreateIndex: true,
useFindAndModify: false,
useUnifiedTopology:true
}, err=> {
if (err) throw err;
console.log('Connected to Mongo DB')
})
app.get('/', (req, res) => {
res.json({msg: "Welcome"})
})
app.listen(PORT, () => {
console.log('Server is running on port', PORT)
})
解决方案
您可以检查您是否已将节点配置为使用 ES 模块。这是在 package.json
“类型”:“模块”,
删除此行并再次检查。
请记住,拥有 "type": "module" 您不能使用 require 而是需要使用 import 语法。
推荐阅读
- python - 特征工具中的 time_since_previous 是如何计算的?
- ruby - 无法在 macOS Catalina 版本 10.15.3 上更新 Ruby
- azure - ACR 构建命令不构建 Dockerfile
- python - Selenium-Python:无法单击选择中的选项
- python - PyQt5 - 通过 Qt Designer 创建的 QPushButton 悬停信号
- sql - 使用带有 IN 子句的子查询
- spring-security - Keycloak:注销会话撤销离线令牌
- angular - 将 REST API 中的数据消耗到 ASP;NET CORE(Angular ASP.NET CORE 项目)
- karate - 空手道:验证文本是否包含在 cat 返回所有键值不匹配错误的小猫列表中
- php - 可变变量作为PHP中的函数参数