我在 Angular 模板流语法中遇到 @if 问题。
RxJs Observable 中有一个值可用。因此,异步管道会有所帮助,并将值分配给变量。
@if (currentPageNumber$ | async; as currentPageNumber) {
// currentPageNumber is number
对于值 0,if 语句无效。所以我只排除空值...但现在 currentPageNumber 的值为布尔值。
@if ((currentPageNumber$ | async) !== null; as currentPageNumber) {
// currentPageNumber is boolean
如何检查 null 但保留变量与流的值?
您遇到的问题是由于 as
当您执行
(currentPageNumber$ | async) !== null; as currentPageNumber
时,您会将 (currentPageNumber$ | async) !== null
的结果影响到变量 currentPageNumber
在这种情况下,结果是布尔值
解决问题的一种方法是让变量受影响并在第一个中添加嵌入 if
@if (currentPageNumber$ | async; as currentPageNumber) {
@if (currentPageNumber !== null) {
}
}