Fak*_*ire 3 rxjs typescript angular
我想将查询参数传递给 an ,*ngIf但由于是字符串类型,因此一直评估为 true 。如何将我的查询参数更改为布尔值,使其评估为 false?
查询参数是?paywall=true但对于查询仍然是正确的?paywall=false
组件.ts
ngOnInit() {
this.paywallQuery$ = this.route.queryParamMap.pipe(map(params => params.get('paywall')));
}
Run Code Online (Sandbox Code Playgroud)
组件.html
<div *ngIf="(paywallQuery$ | async)"> <-- always evaluates as true
</div>
Run Code Online (Sandbox Code Playgroud)
通过对 执行字符串比较,将值映射到布尔值'true'。
ngOnInit() {
this.paywallQuery$ = this.route.queryParamMap.pipe(
map(params => {
const value = params.get('paywall');
return value ? value.toLocaleLowerCase() === 'true' : false;
})
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2428 次 |
| 最近记录: |