Мое представление не обновляется из Observable , но обновляется из Observable .
ts file: 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;
}
file: 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» и не отображается в представлении / браузере?Он прекрасно компилируется и отладчик браузера не показывает исключений.Спасибо.