Angular 2 Service Zweiwege-Datenbindung

Ich habe einsalary.service und einplayer.component, wenn die Gehaltsvariable im Service aktualisiert wird, wird die Ansicht in der Player-Komponente aktualisiert? Oder ist das in Angular 2 nicht der Fall?

Wenn die Seite zum ersten Mal geladen wird, wird der 50000 in der Komponentenansicht des Players angezeigt, sodass ich weiß, dass beide zusammenarbeiten. Es aktualisiert den Wert, der mich verblüfft hat.

salary.service

export class SalaryService {

    public salary = 50000; // starting value which gets subtracted from

    constructor() { }

    public setSalary = (value) => { this.salary = this.salary - value };

}

player.component

export class PlayerComponent {

    constructor(private salaryService:SalaryService) {}

    public salary = this.salaryService.salary;

    public updateSalary = (value) => { this.salaryService.setSalary(value) };

}

BEARBEITE

Für alle, die sehen möchten, wie ich das Problem gelöst habe, hier ist der Plunker:

http: //plnkr.co/edit/aFRXHD3IAy0iFqHe5ard? p = preview

Antworten auf die Frage(2)

Ihre Antwort auf die Frage