Показать сообщение отдельно
  #5 (permalink)  
Старый 01.11.2017, 20:51
Аспирант
Отправить личное сообщение для shoopik Посмотреть профиль Найти все сообщения от shoopik
 
Регистрация: 02.07.2017
Сообщений: 83

Сообщение от destus Посмотреть сообщение
shoopik,
А что содержится в this.updates? Там и должны быть эти самые функции типа ImessagesOperation.
Как вообще этот operation связывается с updates ?
updates: Subject<any> = new Subject<any>();

Вот в таком порядке идёт, больше по-моему нигде не используется this.updates.
Сначала добавляется новое сообщение:
addMessage(message: Message): void {
    this.newMessages.next(message);
  }

Потом оно передается в this.create?
this.newMessages
      .subscribe(this.create);

Вот здесь функция типа :IMessageOperation. Она добавляет новое сообщение в массив сообщений. Подозреваю это она и есть. Но как она привязывается к operation я не понимаю. И что она делает в this.messages.
this.create
      .map( function(message: Message): IMessagesOperation {
        return (messages: Message[]) => {
          return messages.concat(message);
        };
      })
      .subscribe(this.updates);

Последний раз редактировалось shoopik, 01.11.2017 в 20:55.
Ответить с цитированием