我正在尝试在模板中获取最小/最大验证器。
ngOnInit() {
this.app.object$.pipe(takeWhile(() => this.alive)).subscribe(object=> {
this.object= object;});
this.objectMin= object.min.find(x => x.name === "min11").value;
}
我正在尝试在模板中使用objectMin(数字)。但是,由于observable尚未完成订阅,因此对象仍然未定义,因此objectMin也仍然未定义。
任何解决方案吗?
谢谢!
答案 0 :(得分:0)
为此可能有几种解决方案。最好的方法是拥有一个可观察的物体,它将像这样包裹您的objectMin
:
具有这样的类级别可观察变量:
objectMin$: Observable<number>;
像这样在ngOnInit()
中初始化此可观察对象-
ngOnInit(){
this.objectMin$ = this.app.object$.pipe(
takeWhile(() => this.alive),
map((object) => {
this.object = object;
return object.min.find(x => x.name === "min11").value;
})
);}
在模板中使用async
管道来展开以下值:<currency-input [form]="formGroup"[min]="objectMin$ | async">
希望有帮助。