是否可以通过某种方式更新服务中某个主题的时间?
我正在考虑将以下功能抽象到服务中:
date: Date;
setTime(hours: number, mins: number, secs: number): void {
this.date.setHours(hours);
this.date.setMinutes(mins);
this.date.setSeconds(secs);
}
服务示例
date: Subject<Date>;
constructor() {
this.date = new Subject();
}
setDate(hrs: number, mins: number, secs: number): Observable<Date> {
const tempDate = this.date;
// tempDate.set - Cannot do .setXXX here since it is a Subject and not a Date
this.date.next
}
答案 0 :(得分:1)
您可以只创建一个新日期,该日期将复制当前日期的日期部分,并使用时间参数。然后将tempDate推向主题。
类似这样的东西:
setDate(hrs: number, mins: number, secs: number): Observable<Date> {
let tempDate = this.date.getValue(); //gets the value of the subject, not the actual subject
tempDate.setHours(hours);
tempDate.setMinutes(mins);
tempDate.setSeconds(secs);
this.date.next(tempDate);
}