BehaviorSubject ударил несколько раз, если есть только одно значение

Это похоже очень похоже на этот вопрос: Наследование интерфейсов в классах ComVisible в C #

Как вы отметили в своем редактировании, это ограничение на .net to COM-хоп, что COM-интерфейс не содержит никаких унаследованных интерфейсов.

На некоторых языках вы могли бы решить это, внедряя блок кода во все соответствующие интерфейсы, но насколько я могу видеть это невозможно в C #.

0
задан akhila nair 19 March 2019 в 08:58
поделиться

1 ответ

Может быть любая из следующих причин:

  1. Это происходит, когда вы подписываетесь на BehaviorSubject в блоке кода, который выполняется несколько раз. Пример, если вы подписываетесь в хуке жизненного цикла ngAfterViewChecked углового компонента, который выполняется несколько раз.
  2. Вы никогда не отписывались, но каждый раз, когда приложение загружает компонент, подписывайтесь на тему своего поведения.
  3. Подписчик BehaviorSubject всегда выполняется по крайней мере один раз, потому что BehaviorSubject требует аргумента по умолчанию при создании и выдает переданный аргумент по умолчанию по крайней мере один раз, если вы вызываете метод .next () только один раз в экземпляре BehaviorSubject, Subscriber будет выполняться дважды , Первый раз для значения по умолчанию, переданного при создании экземпляра BehaviorSubject, второй раз для значения, которое вы передали, вызвав метод .next на экземпляре BehaviorSubject.

Я ответил на ваш вопрос?

Если нет, предоставьте фрагмент кода, чтобы мы могли лучше понять проблему.

0
ответ дан Navneet Prakash 19 March 2019 в 08:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: