加载数据前显示PrimeNg空消息

时间:2019-06-26 06:49:41

标签: angular primeng

我正在使用PrimeNg表显示数据,并添加了如下的空消息模板:

<ng-template pTemplate="emptymessage">
   <tr>
     <td>
         No records found
      </td>
    </tr>
 </ng-template>

,并且我正在使用延迟加载,因为从服务器获取了数据。我添加了一个加载标志,当http调用完成时,该标志会更改。代码如下:

this.myService
    .myHttpCallFunction(params)
    .pipe(
        finalize(() => this.loading = false)
    )
    .subscribe(
        (result: JsendResponse) => this.data = result.data,
         errors => this.errors = errors
    );

我正在将loading标志传递给表,它看起来像下面的样子:

 <p-table [value]="data?.data" [columns]="settings.columns" [lazy]="true" [loading]="loading">

该表是从共享组件加载的,并且该表接受数据作为输入参数。因此,共享组件中数据的声明就像

@Input()

set data(data) {
   if (data) {
            this._data = data;
            this.total = data.meta.pagination.total;
        }

}

get data(){
    return this._data;
}

现在,该表将首先显示No Records Found一秒钟,然后再加载数据。我假设这是因为在接收HTTP响应之前已加载表。但是我该如何解决呢?

0 个答案:

没有答案