Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.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_Firebase_Google Cloud Firestore_Firebase Admin - Fatal编程技术网

Javascript Firebase删除一个数组项

Javascript Firebase删除一个数组项,javascript,firebase,google-cloud-firestore,firebase-admin,Javascript,Firebase,Google Cloud Firestore,Firebase Admin,我想从Firestore中的数组中删除一个值。我正在使用firebase函数,并在删除用户后更新此字段。我尝试过更新数组,尝试过arrayRemove和其他各种行。因为每次我想要运行测试时都必须部署,这会变得非常耗时,而且每次都很难构建和删除数据 所以我希望有人能帮我找到这个解决方案: 我想在DB中循环一个ID用户列表,取出他们的匹配项,并从他们的匹配项列表中删除一个特定ID 当我运行此程序时,它不知道firebase.firestore是什么。因此,我不确定如何使用这种类型的FieldValu

我想从Firestore中的数组中删除一个值。我正在使用firebase函数,并在删除用户后更新此字段。我尝试过更新数组,尝试过arrayRemove和其他各种行。因为每次我想要运行测试时都必须部署,这会变得非常耗时,而且每次都很难构建和删除数据

所以我希望有人能帮我找到这个解决方案:

我想在DB中循环一个ID用户列表,取出他们的匹配项,并从他们的匹配项列表中删除一个特定ID

当我运行此程序时,它不知道firebase.firestore是什么。因此,我不确定如何使用这种类型的FieldValue.delete注册firestore。本节的目标是什么?admin.FieldValue.delete

admin.firestore()
.collection("Users")
.doc(matches[i])
.update({
  [userId]: firebase.firestore.FieldValue.delete(),
});
我也试过:

admin
.firestore()
.collection("Users")
.doc(matches[i])
.update({
  matches: admin.firebase.firestore.FieldValue.arrayRemove(userId),
});
但它也不知道firebase.firestore是什么。从数组中删除一个值的正确方法是什么

此外,我关心的是在for循环中进行调用,但我看不到解决方法。有人有什么建议吗?这些不需要是异步的,因为所有的事务并不相互依赖

我在firebase函数中收到错误消息:

ReferenceError:未定义firebase


如果您像这样导入管理SDK:

const admin = require("firebase-admin");

您需要使用admin.firestore.FieldValue.delete。arrayRemove的模式相同。

如果像这样导入Admin SDK:

const admin = require("firebase-admin");
您需要使用admin.firestore.FieldValue.delete。arrayRemove的模式相同