Как получить значения из Firestore с помощью where (), за которым следуют startAt () и endAt () - PullRequest
0 голосов
/ 14 июня 2019

Я использую anguarfire2, и мне просто нужно получить значения из Firestore, который относится к конкретному типу клиентов и заказывать по позициям

Я пробовал ниже, но не дал никакого результата

angularFirestore.collection('customers', ref => ref.where('type', '==', type)
            .orderBy('position')
            .startAt(1)
            .endAt(2))

Но

   angularFirestore.collection('customers', ref => ref.orderBy('position')
            .startAt(1)
            .endAt(2) )

это работает.Это дает мне результаты независимо от типа клиента.

Возможно ли получить значения с комбинацией where, orderBy, startAt и endAt?

1 Ответ

0 голосов
/ 14 июня 2019

Вам необходимо разбить запросы на страницы, как указано в документе здесь введите описание ссылки здесь

Вы также можете использовать приведенный ниже код для достижения того же:

let first = db.collection('cities')
           .orderBy('population')
           .limit(3);

let paginate = first.get()
.then((snapshot) => {
// ...

// Get the last document
let last = snapshot.docs[snapshot.docs.length - 1];

// Construct a new query starting at this document.
// Note: this will not have the desired effect if multiple
// cities have the exact same population value.
let next = db.collection('cities')
  .orderBy('population')
  .startAfter(last.data().population)
  .limit(3);

// Use the query for pagination
// ...

});

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