266

親と子は、 Angular.ioの公式ガイドのサービス例を介して通信し、Observable ストリーム名でドル記号を使用します。

次の例では、次のことに注意missionAnnounced$してください。missionConfirmed$

import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';

@Injectable()
export class MissionService {

  // Observable string sources
  private missionAnnouncedSource = new Subject<string>();
  private missionConfirmedSource = new Subject<string>();

  // Observable string streams
  missionAnnounced$ = this.missionAnnouncedSource.asObservable();
  missionConfirmed$ = this.missionConfirmedSource.asObservable();

  // Service message commands
  announceMission(mission: string) {
    this.missionAnnouncedSource.next(mission);
  }

  confirmMission(astronaut: string) {
    this.missionConfirmedSource.next(astronaut);
  }
}

誰でも説明できますか:

  • なぜ$使用されるのですか?この表記の背後にある理由は何ですか?公共のプロパティには常にこれを使用する必要がありますか?
  • パブリック プロパティは使用されますが、メソッドは使用されません (例:missionAnnouncements()、missionConfirmations()) - 繰り返しますが、これは Angular2 アプリの規則ですか?
4

4 に答える 4

382

$ suffix ( Cycle.jsで普及) は、変数がObservableであることを示すために使用されます。公式のスタイル ガイドにも掲載される可能性がありますが、まだ掲載されていません。

詳細はこちら :サフィックスのドル記号は何を$意味しますか?

更新: Angular Web サイトの末尾の「$」記号について詳しくは、 https ://angular.io/guide/rx-library#naming-conventions-for-observables をご覧ください。

于 2016-06-20T17:35:22.943 に答える
9

これ$はスタイル ガイドでは見たことがありませんが、サブスクライブできるオブザーバブルを参照するパブリック プロパティに頻繁に使用されているのを見ました。

于 2016-06-07T06:10:37.093 に答える