Angular,如果没有显示任何项目,如何显示警报?

时间:2018-04-08 10:08:01

标签: html angular typescript firebase

当项目不存在时,我正试图显示“项目不存在”等消息。

假设这是我的清单:

user 0
user 1
user 2

,流动的代码显示上面的列表:

<ng-container *ngFor="let user of users | async; let i = index">
  <div *ngIf="!user.deleted">
    {{user.name}} {{i}}
  </div>
</ng-container>

现在让我们假设所有用户都已被删除(user.deleted = true) 但是用户数组仍然存在并具有相同的长度3

那么如何才能显示此处没有任何用户的消息?

  

注意:上面的列表是实时列表(fireabse)

感谢。

2 个答案:

答案 0 :(得分:1)

您可以使用this.users.every(user => user.deleted)检查是否至少有一位用户尚未删除。

根据该条件,您可以在html中显示/隐藏另一个div。

Working demo

答案 1 :(得分:1)

您要做的是创建用户列表(包含三个条目),然后隐藏内容。您应该做的是直接过滤用户列表。这可以在您获取用户的组件代码中完成。也许你甚至可以让firebase do the filtering。在for循环之后,你可以添加一个* ngIf来测试列表的长度为零,并显示一个&#34;没有找到任何条目&#34;消息。