如何从 NodeJS 在 MongoDB 中同时设置和取消设置?

How to set and unset simultaneously in MongoDB from NodeJS?

我有以下代码来设置数据:

MongoClient.connect(mongoConnectionUrl, function (err, db) {
          if (err) {
              console.log("error");
          } else {                  
              var collection = db.collection(collectionName);
              collection.updateOne(query, {
                  "$set": data
              }, function (err) {
                  if (err) {
                      console.log("eror");                          
                  } else {
                    console.log("success.........");                         
                  }
                  db.close();
              });
          }
      });

如何同时设置数据和取消设置某些字段?

您可以组合 $set and $unset operator in the same update operation

MongoClient.connect(mongoConnectionUrl, function(err, db) {
  if (err) {
    console.log("error");
  } else {
    var collection = db.collection(collectionName);
    collection.updateOne(query, {
      "$set"  : data,
      "$unset": data,
    }, function(err) {
      if (err) {
        console.log("eror");
      } else {
        console.log("success.........");
      }
      db.close();
    });
  }
});