我试图在React中使用Axios发出删除请求。我的后端是节点。我无法通过axios正确传递数据。它成功地console.log(res) 并命中控制器给我Member sucessfully deleted
消息。但是当我刷新我的页面时,记录仍然存在。我不知道造成这种情况的原因。
这是我的反应中的axios代码:
onDelete(memberId) {
axios.delete('http://localhost:5000/api/members', {id: memberId})
.then(res => {
console.log(res)
console.log('it works')
})
.catch(function (error) {
console.log(error);
});
}
这就是我所说的:
<Table.Body>
{this.state.members.map(member =>
<Table.Row key={member._id}>
<Table.Cell>{member.name}</Table.Cell>
<Table.Cell>{member.email}</Table.Cell>
<Table.Cell> <Button icon='remove user' onClick={() => this.onDelete(member._id)}/></Table.Cell>
</Table.Row>
)}
</Table.Body>
这是我的控制者:
exports.delete_a_member = function (req, res) {
console.log(req.params);
Member.remove({
_id: req.params.memberId
}, function (err, member) {
if (err)
res.send(err);
res.json({message: 'Member successfully deleted!!'});
});
};
这是我的路线:
module.exports = function(app) {
var members = require('../controllers/membersController');
app.route('/api/members')
.get(members.list_all_members)
.post(members.create_a_member)
.delete(members.delete_a_member);
};
答案 0 :(得分:1)
尝试一下我尝试过的http://localhost:5000/api/members${memberId}
并成功了,您可以问Jasser Abdel系统天使
答案 1 :(得分:0)
在mongoDb中从集合中删除文档似乎不推荐使用 remove()。试用 deleteOne()方法。 您可以在文档https://docs.mongodb.com/manual/reference/method/db.collection.deleteOne/#db.collection.deleteOne
中查看如何使用它