Реализация шаблона публикации и подписки для угловых библиотек - PullRequest
0 голосов
/ 03 апреля 2019

Сценарий: у меня есть 2 проекта библиотеки, т.е. lib1 и lib2, и один проект приложения, т. Е. Lib-app, который использует ранее созданные 2 библиотеки.

В lib-app я реализовал шаблон публикации и подписки, используякласс обслуживания.

В уведомлении lib-appService

export class NotificationService {
    /*Publish method*/

    emitActiveEditor$: Subject<any> = new BehaviorSubject<any>(null);
      emitActiveEditorInfo(any: any) {
        this.emitActiveEditor$.next(any);
      }
    /*subscribe mehthod*/

      get emitActiveEditorChange(): BehaviorSubject<any> {
        return (this.emitActiveEditor$ as BehaviorSubject<any>);
    } 
}

Теперь в библиотеке lib1 я публикую сообщение следующим образом

import { NotificationService } from 'dist/muvi6-utilities';**//this import show error**
    constructor(private notificationService: NotificationService) { }
       ngOnInit() {
           this.notificationService.emitActiveEditorChange();
          }

И в lib2 я подписываюсь

import { NotificationService } from 'dist/muvi6-utilities';**//this import show error**
    constructor(private notificationService: NotificationService) { }

       ngOnInit() {
    //this.notificationService.emitActiveEditorChange();

    this.notificationService.emitActiveEditorChange.subscribe(result => {
      if (result) {
        alert("Hello Received in Lib2" +result)

      }
    });
  }

Здесь я не могу импортировать форму NotificationService Lib-app

Может кто-нибудь сказать, как мне это сделать?В основном я хочу публиковать из компонента в lib1 и подписаться на него в lib2 и наоборот.

...