Firebase 检查 Flutter 中的项目是否不在数组中

Luc*_*_54 2 firebase flutter google-cloud-firestore

我想检查我的 Flutter 应用程序是否有某个项目不在数组中。如果它在里面,我想把它整理出来,如果没有,我想把它拿走。

有一个arrayContains反向函数的函数,但是我找不到arrayContainsNot函数什么的。我该如何解决这个问题?

我想这样做:

await FirebaseFirestore.instance
    .collection("someCollection")
    .where("someArray", arrayContainsNot: "someItem")
    .get();
Run Code Online (Sandbox Code Playgroud)

Vic*_*ele 5

您可以使用not-in运算符。

not-in 查询返回给定字段存在、不为空且与任何比较值都不匹配的文档。

所以你的代码变成:

    await FirebaseFirestore.instance
        .collection("someCollection")
        .where("someArray", whereNotIn: ["someItem"])
        .get();
Run Code Online (Sandbox Code Playgroud)

请注意,它最多支持 10 个比较值,这些值必须以列表形式传递给属性whereNotIn