Вы можете добиться этого, используя двустороннюю привязку данных в угловых.При изменении значений двустороннего свойства оно обновит значение соответствующего шаблона компонента в DOM.
demo.component.html
<app-header [name]="model.name"></app-header>
<personal-information ></personal-information>
<address [name]="model.name"></address> // multiple address for loop
<app-footer [name]="model.name"></app-footer>
demo.component.ts
demoFn(){
model.name="Joe"
}
Значение имени 'Joe' будет передано всем компонентам, вынеобходимо принять имя атрибута во всех компонентах, используя @Input ().
personal-information.component.ts
@Input() name:string;
personal-information.component.html
<input [(ngModel)]="name" />
Теперь, когда изменится значение в компоненте персональной информации, оно передаст его во все компоненты и будет обновлено в DOM, если оно используется.