У меня есть дублированный компонент, который использует общую службу и использует подчиненное поведение.
Вот мой компонент
export class HelloComponent {
message:string;
printedMessage:string
constructor(private data: DataService, private router : Router) { }
ngOnInit() {
this.message = this.data.messageSource.value;
}
updateService(){
this.data.changeMessage(this.message);
this.printedMessage=this.data.messageSource.value
//this.data.currentMessage.subscribe(message => this.message = message)
}
navigateToSibling(){
this.router.navigate(['/sibling']);
}
}
служба данных
export class DataService {
messageSource = new BehaviorSubject<string>("default message");
constructor() { }
changeMessage(message: string) {
this.messageSource.next(message)
}
}
родительский компонент
<hello></hello>
<hello></hello>
Вот демоверсия stackblitz
Я хотел бы, чтобы при внесении изменений в компонент 1дублированный компонент получит и это изменение.(когда я нажимаю «Сохранить», я запускаю функцию save()
на обоих компонентах, см. здесь )
На самом деле, когда я изменяю вход в первом компоненте, он печатается только вэтот компонент отсутствует в дубликате.
Использует ли компонент разностный экземпляр общего data.service?если да, то как их сделать одинаково?