#angular #firebase #firebase-realtime-database #rxjs
#angular #firebase #firebase-база данных в реальном времени #rxjs
Вопрос:
при использовании angular обычно используется RxJS для обещаний, и мне интересно, правильно ли это при использовании firebase. Если да, то почему (в чем выгода) и как я могу это сделать?
например, как обернуть метод firebase push, чтобы метод возвращал observable, а не firebase.database.database.Тогда тип ссылки
sendMsg(msg: M.ChatMessage) {
return this.db.list(this.firebaseChatPath).push(msg);
}
Комментарии:
1. Вы можете превратить любой объект Promise (или подобный Promise) в наблюдаемый с помощью
from
метода. (import { from } from 'rxjs';
)2. Я бы рекомендовал проверить AngularFire2 , который оборачивает Firebase Realtime Database API таким образом, чтобы он хорошо взаимодействовал с Angular. Обратите внимание, кстати, что
push()
уже возвращает тип, совместимый сPromise
, поэтому вы должны иметь возможность передавать его везде, где ожидаетсяPromise
.