Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Firebase中删除嵌套集合的一部分?_Javascript_Reactjs_Firebase_Google Cloud Firestore - Fatal编程技术网

Javascript 如何在Firebase中删除嵌套集合的一部分?

Javascript 如何在Firebase中删除嵌套集合的一部分?,javascript,reactjs,firebase,google-cloud-firestore,Javascript,Reactjs,Firebase,Google Cloud Firestore,我没有成功删除Firebase中嵌套集合的一部分。以下是该系列的照片: 这就是我要做的,删除,例如,0A7vtcos。。。提供服务的内部 async function deleteOfferedServiceFromDatabase() { const businessRef = await db.collection("businessesPendingAdminApproval") .doc(businessId) .collection('offeredSer

我没有成功删除Firebase中嵌套集合的一部分。以下是该系列的照片:

这就是我要做的,删除,例如,0A7vtcos。。。提供服务的内部

async function deleteOfferedServiceFromDatabase() {
   const businessRef = await db.collection("businessesPendingAdminApproval")
      .doc(businessId)
      .collection('offeredServices')
      .doc(props.id) //props.id is equivalent to '0A7vtcos...'
      .get()

   businessRef.delete() //won't work 
}

deleteOfferedServiceFromDatabase()

您的文档实际上没有任何嵌套的子集合。它在名为offeredServices的文档字段中有一个嵌套字段

如果要删除嵌套字段,则必须使用字段值点符号指定嵌套字段名称,并告诉Firestore使用以下命令删除字段,从而更新文档:

async function deleteOfferedServiceFromDatabase() {
  const businessRef = db
    .collection("businessesPendingAdminApproval")
    .doc(businessId)

   await businessRef.update(`offeredServices.${props.id}`, FieldValue.delete())
}