Firestore выборка данных в неправильном порядке - PullRequest
0 голосов
/ 11 февраля 2019

Я получаю данные из пожарного магазина, используя угловую 6. У меня есть коллекция с именем users, каждый документ этой коллекции содержит информацию о пользователе, и у каждого пользователя может быть одна из трех ролей пользователя "Admin", "ASM" или "Salesmen".Я использую company_code в качестве фильтра.Теперь, когда я выбираю данные, выбираются только администраторы всего company_code, а затем через некоторое время выбираются все остальные пользователи.Может кто-нибудь сказать мне, что я делаю не так здесь

getAllUsers(companycode){
    this.afs.collection('users',ref=>ref
    .where("company_code","==",companycode))
    .snapshotChanges().pipe()
    .map(res=>res.map(res=> res.payload.doc.data()))
    .subscribe(res=>{
         console.log(res)
    });
}

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Чтобы получить всех пользователей компании, удалите эту строку .where («company_code», «==«, companycode)

Чтобы получить всех продавцов компании, используйте .where («comoany_code», «==«, «Продавцы»

0 голосов
/ 11 февраля 2019

Шаг 1. Создайте поле timestamp или precedence для ссылки на ваш заказ.

Шаг 2. Добавьте orderBy в свой запрос

getAllUsers(companycode) {
    this.afs.collection('users', ref =>
      ref.where("company_code", "==", companycode).orderBy('timestamp')
    )
      .snapshotChanges().pipe()
      .map(res => res.map(res => res.payload.doc.data()))
      .subscribe(res => {
        console.log(res)
      });
}

Предположим, вы используете angularfire2

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