打字稿角2 NG-书语法
问题描述:
谁能给我解释一下什么立场:打字稿角2 NG-书语法
Subject<User> = new BehaviorSubject<User>(null);
在
export class UserService {
// `currentUser` contains the current user
currentUser: Subject<User> = new BehaviorSubject<User>(null);
public setCurrentUser(newUser: User): void {
this.currentUser.next(newUser);
}
}
请:)
我不明白,TS类型的使用在这种情况下,
答
BehaviorSubject
继承自Subject
。从服务用户的角度来看,他们并不关心,但BehaviorSubject
初始化为初始值,因此构造函数的参数为null
。在此情况下,任何订阅该类的类都将立即获得值null
,即使在调用.next
之前也是如此。
至于在Subject<User>
,Subject
和BehaviorSubject
User
是generic types。这让你知道他们使用的是什么类型,当你订阅它们时,你可以得到代码完成,因为你的开发环境知道它得到的是什么类型。