Будут ли предоставлены ссылки на документы Firebase, если их запросить из разных частей приложения?

#firebase #google-cloud-firestore #angularfire2 #ngrx

#firebase #google-cloud-firestore #angularfire2 #ngrx

Вопрос:

Я рассматриваю вопрос о том, нужно ли мне хранить мою firebase DocumentReferences в моем хранилище ngrx. Я бы предпочел, чтобы запрос не дублировал сетевые запросы, но я также хотел бы избежать сложности хранения и извлечения ссылок на документы из хранилища.

Я предполагаю, что @angular / fire сохранит ссылку на эти ссылки на документы где-нибудь за кулисами — например, в rxjs shareReplay() — но я ничего об этом не читал. При этом упоминается, что это:

дружественный к ngrx — Интеграция с ngrx с использованием API-интерфейсов AngularFire, основанных на действиях. Ссылка

Существует руководство по fireship по размещению документов в хранилище, но я не уверен, что это вообще необходимо.

Ответ №1:

Я не совсем уверен, о чем вы здесь спрашиваете, но, похоже, вас беспокоит то, что две части вашего приложения прослушивают одно и то же местоположение в базе данных через два разных ссылочных объекта. Это не проблема. SDK не будет дублировать данные, отправленные по соединению для каждого отдельного ссылочного объекта, если они указывают на одно и то же местоположение. Вы можете быть уверены, что использование полосы пропускания будет сведено к минимуму и ограничится только тем, что необходимо для удовлетворения всех прослушиваемых ссылок в любой данный момент.

Комментарии:

1. Это то, что я хотел знать. Вы знаете, где я могу прочитать об этом? Я не видел, чтобы это описывалось в документах.

2. Это не документировано, это просто ожидаемая оптимизация. То же самое было с базой данных реального времени (многие из тех же людей работали над обоими продуктами).