2016-04-27 10 views
1

コンポーネントのサービスコールメソッドを(私はAngular2でtypescriptを使用しています)どのようにする必要がありますか?angular2コンポーネントのサービスコールメンバ関数を持つ正しい方法

私のサービスでは、ときどきコンポーネントにいくつかのイベントを通知する必要があります。 (時間の経過と共に無作為に更新する)

私が考えることの1つは、サービスにコンポーネントを参照させ、コンポーネントのメソッドをrefを使って直接呼び出させることです。

Angular2で他のより良い/適切な方法がありますか?

おかげ

答えて

3

コンポーネントが購読することができ、観察提供:

@Injectable() 
export class MyService { 
    Subject someEvent = new Subject(); 
    doSomething() { 
    this.someEvent.next('someValue'); 
    } 
} 
@Component({ ...}) 
export class MyComponent { 
    constructor(myService:MyService) { 
    myService.someEvent.subscribe(value => this.someMethod(value)); 
    } 

    someMethod(value) { 
    console.log(value); 
    } 
} 
関連する問題