Javascript Firebase firestore从字段数组中删除项

Javascript Firebase firestore从字段数组中删除项,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我正在使用Firebase Firestore制作我的网站 如您所见,我有一个字段commentList,它的类型是array,现在我想删除数组的第一项 这就是我所做的: exports.delete__comment = (req, res, next) => { const {id} = req.params; const {comment} = req.body; return db .collection('instagram__posts') .d

我正在使用
Firebase Firestore
制作我的网站

如您所见,我有一个字段
commentList
,它的类型是
array
,现在我想删除数组的第一项 这就是我所做的:

exports.delete__comment = (req, res, next) => {
  const {id} = req.params;
  const {comment} = req.body;

  return db
    .collection('instagram__posts')
    .doc(id)
    .update({
      commentList: FieldValue.arrayRemove(JSON.stringify(comment)),
    })
    .then((doc) => {
      console.log('comment deleted', comment);
      next();
    })
    .catch((err) => {
      res.status(500).json({err});
      console.log(err);
    });
};
如果项目被删除,我将
console.log('comment deleted',comment)成功了


但可悲的是,它并没有在数据库中为我取而代之,它仍然存在。请告诉我如何修复它,非常感谢您,祝您圣诞快乐

我不知道您为什么使用
JSON.stringify
comment
对象转换为字符串


尝试使用
comment
而不是
JSON.stringify(comment)

试试这个:em muố新墨西哥州ả 项目luôn anhạ 中国ứ 孔丘ỉ 克索姆ỗi场,em ghi rõra vậy cho dễ 比恩博士ệ托伊。Em xin cảmơn你的身体需要什么看起来像?在这里使用
JSON.stringify()
没有意义。数组项是对象,而不是字符串,因此您应该传递一个与要删除的对象完全匹配的对象。在文档中,它仅适用于字符串