不断收到此错误,但无法弄清楚我的删除功能出了什么问题。 “Route.delete() 需要一个回调函数,但得到一个 [对象未定义]”
const playerController = {
index: (request, response) => {
Player.find({})
.then(player => response.json(player))
.catch(error => console.log(error));
},
create: (request, response) => {
Player.create(request.body)
.then(player => response.json(player))
.catch(error => console.log(error));
},
delete: (request, response) => {
Player.remove(request.params.id)
.then(player => response.json(player))
.catch(error => console.log(error));
//console.log('node function');
}
};
//- - - - = = = = Routes = = = = - - - -
app.get('/players', playerController.index);
app.post('/players', playerController.create);
app.delete('/players/:id', playerController.destroy);
app.all("*", (request, response) => { response.sendFile(path.resolve("./manager/dist/index.html")) });
最佳答案
好的,总结一下,这里有两个问题:
当您应该使用
playerController.delete
时,您却使用了.playerController.destroy
。要按 ID 删除项目,您应该使用
Player.findByIdAndRemove()
。
关于javascript - Route.delete() 需要一个回调函数,但得到一个 [object Undefined],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48046916/