繁体   English   中英

nodemon 应用程序崩溃 - 在开始之前等待文件更改...错误

[英]nodemon app crashed - waiting for file changes before starting ... Error

应用程序

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 抛出 er; // 未处理的“错误”事件 ^

错误:监听 EADDRINUSE:在 Server.listenHandle [as _listen2] (node:net:1330:16) atlistenInCluster (node:net:1378:12) 在 Server.listen (node:net: 1465:7) 在 Function.listen (C:\Users\islam\OneDrive\Desktop\shopnode\node_modules\express\lib\application.js:635:24) 在 Object。 (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) 在服务器实例上发出 'error' 事件: atemitErrorNT (node:net:1357:8) at processTicksAndRejections (节点:内部/进程/任务队列:83:21){代码:'EADDRINUSE',
errno: -4091, syscall: 'listen', address: '::', port: 8000 } [nodemon] app crashed - 在开始之前等待文件更改...

如果我们有一些正在运行的项目都是相同的端口并且在您的服务器上然后捕获这个错误并且我在那段时间解决了。

  1. 打开终端设置您的目录位置并在您的终端上运行此命令,使用以下命令执行此操作:- pkill node或用于 mac:- sudo killall -9 node或 windows:- > killall -9 node

    killall node

  2. 否则在您定义的端口上使用它修改您的代码var port = process.env.PORT || 8000; var port = process.env.PORT || 8000;

做所有这些事情然后服务器重启npm startnode app.js

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM