如何在来自服务器端的数据时呈现html

时间:2018-05-21 12:15:14

标签: angular

我正在使用角度4.我使用一个div来获取HTML中找不到的数据。而且我希望这个div只有在数据不会出现时才会显示。但是为了获取我的数据它花费时间同时未找到数据div也显示,直到时间数据不显示。但我想只在数据不存在时显示。

为此,我使用下面的代码在component.ts:

this.allData -> In this all data is coming but taking time.

以下是HTML文件中的代码:

<div *ngIf="allData && allData.length > 0 else noResultFound">
This is testing data come from allData variable.
</div>
<ng-template #noResultFound>
    <h2>Sorry, no results found.</h2>
</ng-template>

我遇到的问题是,假设获取数据需要10秒钟,而noResultFound div显示10秒钟。我想只有在数据长度为0时才显示。

谢谢,

2 个答案:

答案 0 :(得分:0)

如果allData是数组,则可以使用*ngIf="!allData.length",如果是对象,则可以尝试*ngIf="!allData"。试试看,告诉我是否有效!我会在两个div中使用*ngIf!一个显示数据,另一个显示反馈!但我不知道这是不是最好的方式......谢谢!

答案 1 :(得分:0)

你的代码非常正确。您需要在; else之前添加ngIf。所以你的HTML会是:

<div *ngIf="allData && allData.length > 0; else noResultFound">
This is testing data come from allData variable.
</div>
<ng-template #noResultFound>
    <h2>Sorry, no results found.</h2>
</ng-template>