导入相关错误-express js
Import related errors- express js
我第一次尝试在 express-js 中使用“模块”类型 javascript。我正在尝试创建一个图书跟踪应用程序,但是当我尝试在主 js 文件中导入路由时遇到一些错误,它说找不到模块。
目录结构:
app.js:
import dotenv from "dotenv";
dotenv.config();
import express from "express";
import bodyParser from "body-parser";
import cors from "cors";
import mongoose from "mongoose";
// import routes
import authRoutes from "./routes/auth";
// db config
mongoose
.connect(process.env.DB_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
})
.then(() => console.log("DB Connected"))
.catch((err) => console.log(err));
// constants
const app = express();
const port = process.env.PORT || 5001;
// middlewares
app.use(bodyParser.json());
app.use(cors());
// using routes
app.use("/api", authRoutes);
app.listen(port, () =>
console.log(`Server is running on http://localhost:${port}/`)
);
routes/auth.js:
import express from "express";
const router = express.Router();
router.get("/auth", (req, res) => {
res.send("Hello from auth");
});
export default router;
package.json:
{
"name": "server",
"version": "1.0.0",
"main": "app.js",
"license": "MIT",
"type": "module",
"dependencies": {
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"dotenv": "^10.0.0",
"express": "^4.17.1",
"mongoose": "^6.0.5"
}
}
错误:
Note: Other imports related to database models are all working fine!
添加 js 扩展 Node ESM 没有它就无法工作
import authRoutes from "./routes/auth.js";
我第一次尝试在 express-js 中使用“模块”类型 javascript。我正在尝试创建一个图书跟踪应用程序,但是当我尝试在主 js 文件中导入路由时遇到一些错误,它说找不到模块。
目录结构:
app.js:
import dotenv from "dotenv";
dotenv.config();
import express from "express";
import bodyParser from "body-parser";
import cors from "cors";
import mongoose from "mongoose";
// import routes
import authRoutes from "./routes/auth";
// db config
mongoose
.connect(process.env.DB_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
})
.then(() => console.log("DB Connected"))
.catch((err) => console.log(err));
// constants
const app = express();
const port = process.env.PORT || 5001;
// middlewares
app.use(bodyParser.json());
app.use(cors());
// using routes
app.use("/api", authRoutes);
app.listen(port, () =>
console.log(`Server is running on http://localhost:${port}/`)
);
routes/auth.js:
import express from "express";
const router = express.Router();
router.get("/auth", (req, res) => {
res.send("Hello from auth");
});
export default router;
package.json:
{
"name": "server",
"version": "1.0.0",
"main": "app.js",
"license": "MIT",
"type": "module",
"dependencies": {
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"dotenv": "^10.0.0",
"express": "^4.17.1",
"mongoose": "^6.0.5"
}
}
错误:
Note: Other imports related to database models are all working fine!
添加 js 扩展 Node ESM 没有它就无法工作
import authRoutes from "./routes/auth.js";