Добавляйте предложение where к запросу только при необходимости:

учил некоторые данные из firestore, но в свой запрос я хочу добавить условное предложение where. Я использую async-await для API и не уверен, как добавить условное предложение 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)
}

В моей основной функции я получаю параметр под названием «тип». Основываясь на значении этого параметра, я хочу добавить еще одно предложение qhere к вышеуказанному запросу. Например,if type = 'nocomments'затем я хочу добавить предложение where.where('commentCount', '==', 0), в противном случаеif type = 'nocategories', тогда предложение where будет запрашивать другое свойство, такое как.where('tags', '==', 'none')

Я не могу понять, как добавить эту условную оговорку where.

ПРИМЕЧАНИЕ: в firestore вы добавляете несколько условий, просто добавляя свои предложения where, такие как -.where("state", "==", "CA").where("population", ">", 1000000) и так далее.

Ответы на вопрос(1)

Ваш ответ на вопрос