小编Vit*_*aly的帖子

Angular * ngIf变量具有异步管道多个条件

有一个在Angular中使用* ngIf的很好的文档:https ://angular.io/api/common/NgIf 但是,是否可以使用* ngIf异步变量并对此进行多次检查?就像是:

<div *ngIf="users$ | async as users && users.length > 1">
...
</div>
Run Code Online (Sandbox Code Playgroud)

当然,可以使用嵌套的* ngIf,例如:

<div *ngIf="users$ | async as users">
    <ng-container *ngIf="users.length > 1">
    ...
    </ng-container>
</div>
Run Code Online (Sandbox Code Playgroud)

但最好只使用一个容器,而不是两个。

angular-ng-if angular

9
推荐指数
4
解决办法
1万
查看次数

打字稿。检查未知类型的变量中是否存在方法/属性

TS v3.x 带来了新类型:unknown. 但目前还不太清楚如何轻松地使用这种类型来代替any. 示例:您正在使用一些没有类型的第三方库。而且您没有时间自己编写这些类型。您需要处理该库提供的一些数据。

unknown

function handle(data: any) {
   if (data && data.arrayProp && typeof data.arrayProp[Symbol.iterator] === 'function') {
       for (let x of data.arrayProp) {...}
   }
}
Run Code Online (Sandbox Code Playgroud)

unknown

function handle(data: unknown) {
   // this line gives TS error: `data` is unknown type
   if (data && data.arrayProp && typeof data.arrayProp[Symbol.iterator]=== 'function') {  
...
Run Code Online (Sandbox Code Playgroud)

互联网上的大多数文档都使用某种instanceof方法来检查类型data。但我不太感兴趣data是什么类型。我想知道的是是否存在arrayProp。就是这样

如何用unknown类型来做到这一点?

javascript typescript

6
推荐指数
1
解决办法
4503
查看次数

标签 统计

angular ×1

angular-ng-if ×1

javascript ×1

typescript ×1