Разделение на несколько баз данных с angularfire2 - PullRequest
1 голос
/ 18 марта 2020

Я отчаянно пытаюсь настроить разбиение базы данных Firebase на приложение Ioni c v3 (Angular 4), чтобы уменьшить значения загрузки базы данных в реальном времени.

Я почти заставил это работать, кроме одна маленькая деталь.

Итак, я сделал следующее:

  • инициализировал новое приложение

    const app2 = firebase.initializeApp({ databaseURL: "https://app2.firebaseio.com/" }, "app2");

  • затем в сервисе я использую AngularFireDatabase:

    constructor(private afDatabase: AngularFireDatabase) {}

  • затем, когда я хочу просто получить список элементов из вторая база данных, которую я делаю

    this.afDatabase.list(firebase.database(app2).ref('/items'));

    , которая работает просто отлично.

Но проблема сейчас в том, что когда я передаю объект запроса , вот так

this.afDatabase.list(firebase.database(app2).ref('/items'), {
    query: {
          orderByChild: "item_id",
          equalTo: 5
     }
});

этот запрос полностью игнорируется, он фактически возвращает весь список в /items.

1 Ответ

0 голосов
/ 20 марта 2020

Проблема вызвана ошибкой в ​​реализации методов list() и object() в файле database.ts в пакете angularfire2, версия 2.0.0-beta.8

Точнее, эта строка

isRef: () => FirebaseObjectFactory(urlOrRef)

на самом деле должно быть

isRef: () => FirebaseObjectFactory(urlOrRef, opts)

как под list(), так и object() функциями.

С помощью этого исправления и перекомпоновки пакета angularfire2 мне удалось чтобы это сработало.

...