У меня есть простое приложение стека mern
Я использовал create-react-app
для создания приложения recat.
Я могу запустить сервер и подключиться к БД
Всякий раз, когдаЯ делаю любые изменения, приложение перезагружается, но я всегда получаю сообщение об ошибке
Error: listen EADDRINUSE :::5000
Приложение продолжает работать, и я могу убить его, выполнив
lsof -i :5000
amd, а затем завершить работу запущенной версии.
Почему это происходит при каждом изменении и как я могу это исправить.
server.js
const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const items = require('./routes/api/items');
const app = express();
app.use(bodyParser.json());
const db = require('./config/keys').mongoURI;
mongoose
.connect(db ,{ useNewUrlParser: true })
.then(() => console.log('db connected'))
.catch(err => console.log(err));
app.use('/api/items', items);
const port = process.env.PORT || 5000;
app.listen(port, () => console.log('server connected'));
api / items
const express = require('express');
const router = express.Router();
const Item = require('../../models/Item');
router.get('/', (req, res) => {
Item.find()
.then(items => res.json(items))
.catch(err => console.log(err))
});
router.post('/', (req, res) => {
const newItem = new Item({
name: req.body.name
})
newItem.save().then(item => res.json(item))
})
router.delete('/:id', (req, res) =>{
Item.findById(req.params.id)
.then(item => item.remove().then(() => res.json({success:true})))
.catch(err => err.status(404).json({success:false}))
})
module.exports = router;
модели / предмет const mongoose = require ('мангуст');const схема = мангуста. Схема;
const ItemSchema = new Schema({
name:{
type: 'String',
required: true
},
Date:{
type: Date,
default: Date.now
}
})
module.exports = Item = mongoose.model('item', ItemSchema);