Los cambios realizados en una vista de componente no se reflejan en otra vista de componente en angular 4

Aquí estoy cambiando algunos datos en un componente, por ejemplo: cambiar la imagen de perfil de usuario de un módulo y la misma imagen de perfil debe reflejarse en otro componente de otro módulo. Estos no son componentes padre / hijo. Por lo tanto, estoy importando el módulo y el componente particular. llamando a una función del componente que asigna el valor de alcance de la imagen de perfil. Esa función se activa y la url cambiada aparece en la consola, si imprimo eso en la consola. Pero no se refleja en la vista. Lo intenté conChangeDetectorRef ythis.ref.detectChanges(); Pero está dando error como

core.es5.js:1020 ERROR Error: Uncaught (in promise): Error: No provider for ChangeDetectorRef!
Error: No provider for ChangeDetectorRef!

y también probé con Zone.run ().
Pero no funcionó para mí. ¿Alguien podría ayudarme?

 constructor(private appHeaderComponent: AppHeaderComponent) { }


//component 1 sending data
uploadProfilePicture = (event) => {
 if (this.profileFormData) {
     this.headerService.savePhoto(this.profileFormData, 'profile-pictures').then((saveProfilePhotoData) => {
         if (saveProfilePhotoData['status_code'] === 200) {
             this.appHeaderComponent.getUserImage(saveProfilePhotoData['result']['pictures'][0]['imageUrl']);
         }
     });
  }
 }


//component 2 Receiving data
getUserImage = (image) => {
 if (image) {
     this.userImage = image;
 } else {
     this.userImage = sessionStorage.profilePicture;
 }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta