我有一个具有react,express和mongo的小型应用程序。 GET和POST请求与axios完美配合。 DELETE请求与后端一起使用,并实际上删除mongo数据库中的项目。代码段:
deleteTodo = (event) => {
const url = "http://localhost:4000/dashboard";
const id = event.target.parentElement.getAttribute("data-id");
const deleteUrl = `${url}/${id}`;
axios.delete(deleteUrl)
.then(res => {
console.log("deleted")
});
}
但是之后什么也没发生,我在控制台中没有收到“已删除”消息。我尝试了console.log,setState等,这些功能都没有在.then中触发。
答案 0 :(得分:0)
我在server.js的delete方法中更改了代码,现在它以某种方式起作用了。发件人:
app.delete("/dashboard/:id", (req, res) => {
const id = req.params.id;
Item.findById(id)
.then(item => item.remove())
});
收件人:
app.delete("/dashboard/:id", (req, res) => {
const id = req.params.id;
Item.findById(id)
.then(item => item.remove()
.then(() => res.json({ success: true })))
.catch(err => res.send("Error"))
});