我的视图不是从Observable
ts文件: status.component.ts
stat$: Observable<string>;
constructor() {
this.stat$ = new Observable(o => o.next('This is status text');
}
模板文件: status.component.html
<span class="status">{{ stat$ | async }}</span>
我在浏览器中显示了所需的结果:
这是状态文本
到目前为止很好,但是:
在尝试使用接口或类而不是纯字符串时,这是我的(新手)问题,例如:
ts文件: status.model.ts
export interface StatusStruct {
id?: number;
counter?: number;
timestamp?: string;
isCompleted?: boolean;
isError?: boolean;
statusText?: string;
}
文件:status.component.ts
import { StatusStruct } from './status.model';
stSt: StatusStruct;
stat$: Observable<StatusStruct>;
constructor() {
this.stSt = {
id: 1,
counter: 1,
isCompleted: false,
statusText: 'This is status text'
};
this.stat$ = new Observable(o => o.next(this.stSt);
}
并在我的模板文件中: status.component.html
<span class="status">{{ stat$.statusText | async }}</span>
请您解释一下为什么“ this.stat $”没有被“ this.stSt”更新并且在视图/浏览器中不显示吗?它编译良好,浏览器调试器未显示任何异常。谢谢。