gpt4 book ai didi

javascript - firestore 查询中的条件 where 子句

转载 作者:行者123 更新时间:2023-11-30 11:00:32 24 4
gpt4 key购买 nike

我已经从 firestore 获取了一些数据,但在我的查询中我想添加一个条件 where 子句。我正在对 api 使用 async-await,但不确定如何添加条件 where 子句。

这是我的功能

export async function getMyPosts (type) {
await api
var myPosts = []

const posts = await api.firestore().collection('posts').where('status', '==', 'published')
.get()
.then(snapshot => {
snapshot.forEach(doc => {
console.log(doc.data())
})
})
.catch(catchError)
}

在我的主函数中,我得到一个名为“type”的参数。根据该参数的值,我想向上述查询添加另一个 qhere 子句。例如,if type = 'nocomments',那么我想添加一个where子句.where('commentCount', '==', 0),否则if type = 'nocategories',那么 where 子句将查询另一个属性,例如 .where('tags', '==', 'none')

我无法理解如何添加此条件 where 子句。

注意:在 firestore 中,您只需附加 where 子句即可添加多个条件,例如 - .where("state", "==", "CA").where("population", ">", 1000000 )等等。

最佳答案

仅在需要时将 where 子句添加到查询中:

export async function getMyPosts (type) {
await api
var myPosts = []

var query = api.firestore().collection('posts')
if (your_condition_is_true) { // you decide
query = query.where('status', '==', 'published')
}
const questions = await query.get()
}

关于javascript - firestore 查询中的条件 where 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53431063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com