【发布时间】:2017-03-12 13:44:33
【问题描述】:
我正在通过official cookbook 学习 Angular2。
以下代码突然出现。为什么“missionAnnounced$”没有变量声明?让 MissionAnnounced$ = ... 下面代码的逻辑是什么?
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs/Subject';
@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);
}
}
【问题讨论】:
-
我意识到这是一个 2 岁的封闭帖子,但以防万一其他人也登陆这里:
missionAnnounced$ = this.missionAnnouncedSource.asObservable();行实际上是(MissionService 类的)属性声明和初始化;与missionConfirmed$行和它上面的两条专用行相同。
标签: javascript angular rxjs