【发布时间】:2023-02-12 16:27:45
【问题描述】:
应用程序
const express = require("express");
const path = require("path");
const homeRouter = require("./routes/home.routes");
const app = express();
const port = 8000;
app.use(express.static(path.join(__dirname, "assets")));
app.use(express.static(path.join(__dirname, "images")));
app.set("view engine", "ejs");
app.set("views", "views");
app.use("/", homeRouter);
app.listen(port, () => {
console.log(`server listen on port ${port}`);
});
家庭路线
const router = require('express').Router()
const homeController = require('../controllers/home.controller')
router.get('/', homeController.getHome)
module.exports = router
家庭控制器
const productsModel = require('../models/products.models')
exports.getHome = (req,res,next) => {
//get products
//get render index.ejs
productsModel.getAllproducts().then(products => {
res.render('index', {
products: products
})
})
}
产品.型号
const mongoose = require("mongoose");
const DB_URL = 'mongodb://localhost:27017/shop'
const productsSchema = mongoose.Schema({
name:String,
image:String,
price:String,
category:String,
description:String
})
const product = mongoose.model('product', productsSchema)
exports.getAllproducts = () => {
//connect to db
//get products
//disconnect
return new Promise((resolve,reject) => {
mongoose.connect(DB_URL).then(() => {
return product.find({})
}).then(products => {
mongoose.disconnect()
resolve(products)
}).catch(err => reject(err))
})
}
错误
节点:事件:504 扔呃; // 未处理的“错误”事件 ^
错误:监听 EADDRINUSE:地址已在使用中::8000 在 Server.setupListenHandle [as _listen2] (node:net:1330:16) 在 listenInCluster(节点:网络:1378:12) 在 Server.listen(节点:网络:1465:7) 在 Function.listen (C:\Users\islam\OneDrive\Desktop\shopnode\node_modules\express\lib\application.js:635:24) 在对象。 (C:\Users\islam\OneDrive\Desktop\shopnode\app.js:17:5) 在 Module._compile (node:internal/modules/cjs/loader:1103:14) 在 Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10) 在 Module.load (node:internal/modules/cjs/loader:981:32) 在 Function.Module._load (node:internal/modules/cjs/loader:822:12) 在 Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) 服务器上发出“错误”事件 实例在: 在 emitErrorNT(节点:网络:1357:8) 在 processTicksAndRejections (node:internal/process/task_queues:83:21) { code: 'EADDRINUSE',
错误号:-4091,系统调用:'listen',地址:'::',端口:8000} [nodemon] 应用程序崩溃 - 在开始之前等待文件更改...
【问题讨论】:
标签: node.js mongodb node-modules nodemon nodejs-server