node.js - 如何使用node js从react crud删除数据到mongoDB

标签 node.js reactjs mongodb

我无法使用reactjs和node js删除mongodb中的值

  • 这是我的 React hooks axios post 方法发送到 Node js
    const deleteUser = id => {
            var data={"id":id}
             axios.post('http://localhost:8010/api/social/deletedata',data)
            .then((res) => {
                console.log('response',res);
            })
            .catch((error) => {
                console.log('error block called',error);
            })
            setEditing(false)
            setUsers(users.filter(user => user.id !== id))
            }

  • 这是我的 Node.js 代码
     router.post('/deletedata', function(req, res, next) {
          console.log("deleted values are",req.body)
        //var id = req.body;

        MongoClient.connect(url, function(err, db) {
          assert.equal(null, err);
          var myId = JSON.parse(req.body.id);
          db.collection('customers').deleteMany({"_id": objectId(myId)}, function(err, result) {
            assert.equal(null, err);
            console.log('Item deleted');
            db.close();
          });
        });
      });

最佳答案

我认为您需要将 _id 作为 ObjectID 传递,请尝试这样

var mongodb = require('mongodb');


 router.post('/deletedata', function(req, res, next) {
          console.log("deleted values are",req.body)
        //var id = req.body;

        MongoClient.connect(url, function(err, db) {
          assert.equal(null, err);
          db.collection('customers').deleteMany({"_id": new mongodb.ObjectID(req.body.id)}, 
          function(err, result) {
            assert.equal(null, err);
            console.log('Item deleted');
            db.close();
          });
        });
      });

关于node.js - 如何使用node js从react crud删除数据到mongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57058911/

相关文章:

javascript - 在 Meteor Mongo 上添加、减去和比较日期和时间

mongodb - 在新的 Meteor 应用程序开发中使用本地 MongoDB 而不是 minimongo

Node.js 套接字同时发送和接收

javascript - React 循环遍历数组并渲染多个子组件的实例

ruby-on-rails - Rails 6、React、Rack-Cors

node.js - 如何 mapreduce 具有相互关联的复杂子文档的对象

node.js - Sequelize-Postgres错误: values. map is not a function

用于安装 npm 模块的 Java 插件

node.js - node.isAncestor 不是一个函数

javascript - 带有 history.push 的 React-router 嵌套路由