FireBase Firestore OrderBy не работает при использовании нескольких условий - PullRequest
1 голос
/ 28 июня 2019

Я пытаюсь получить упорядоченный набор результатов на основе поля messageUpdatedAt (метка времени).

Попробовал приведенный ниже код.

    firebase
      .firestore()
      .collection('conversations')
      .where('type', '==', 'direct')
      .where('ids', 'array-contains', id)
      .orderBy('messageUpdatedAt', 'DESC')
      .limit(limit)

Если я запускаю это, я получаю неупорядоченный набор результатов. Но если я прокомментирую условие «arrary-содержащий where» (where('ids', 'array-contains', id)), результаты упорядочиваются (на основе поля messageUpdatedAt).

Добавленный ниже составной индекс к коллекции conversation.

type - Ascending
ids - Array
messageUpdatedAt - Descending

Я что-то не так делаю? Есть ли в любом случае запустить это без комментариев и получить упорядоченный набор результатов (на основе поля messageUpdatedAt).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...