【发布时间】:2018-06-11 07:54:39
【问题描述】:
不断收到此错误,但无法弄清楚我的删除功能出了什么问题。 “Route.delete() 需要一个回调函数,但得到了一个 [object Undefined]”
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")) });
【问题讨论】:
-
app.delete()指向playerController.destroy,但您没有显示playerController.destroy的任何代码。您显示something.delete的代码。 -
是的,那是我的错。我已经编辑了上面的代码以包含所有内容。
-
playerController.destroy没有代码。你是不是把.delete和.destroy搞混了?应该是app.delete('/players/:id', playerController.delete);? -
是的,我确实搞混了。所以这让我的项目重新启动并运行,但它仍然不会真正从我的数据库中删除条目。
-
不确定您希望我们在这方面提供什么帮助。
Model.findByIdAndRemove()有用吗?
标签: javascript angularjs node.js mongoose mean-stack