使用角度v2.4.8和涂底漆v1.1.4
我有一个包含两个组件的页面:
DropZone,用于上传文件
p-datatable显示上传的文件
我将dropzone配置为一次发送5个文件,当它完成5个文件时,将引发事件onDropZoneSendingMultiple。当上传所有文件时,将引发onDropZoneQueueComplete
在这两个监听器中,我都想刷新第二个组件中的数据表。这不管用。我需要刷新页面以查看新文件。
我的主页HTML:

<div class="row" id="dropzoneContainer">
    <dropzone class="dropzone" #dz [config]="dropZoneConfig"
              (error)="onDropZoneUploadError($event)"
              (sendingmultiple)="onDropZoneSendingMultiple($event)"
              (queuecomplete)="onDropZoneQueueComplete($event, dz);"
              (maxfilesreached)="onDropZoneMaxfilesReached($event)"
              (maxfilesexceeded)="onDropZoneMaxfilesExceeded"></dropzone>
</div>

<div class="row">
    <div class="col-md-12">
        <FilesList></FilesList>
    </div>
</div>

Dropzone-组件显示dropzone。FilesList显示数据表。
HTML的一部分:
<p-dataTable [hidden]="loading" [value]="files" selectionMode="single" (onRowSelect)="details($event)">

在我的主ts文件中,我有:
@ViewChild(FilesListComponent)
public filesListComponent: FilesListComponent;

private reloadFileList() {
  this.filesListComponent.reload();
}

在我的文件列表中
public files: File[];
public reload() {
    this.getFiles();
}
public getFiles() {
    this.fileService.getAll()
        .then(
        data => {
            this.files = data;
        });
}

getFiles也在页面加载时调用。
当我添加console.log()语句时,我可以看到getFiles()被调用并且this.files被更新,但是表不刷新。

最佳答案

对于仍在寻找将记录添加到绑定到素数表的数组的新语法的任何人
this.arrayRecords= [...this.arrayRecords, newObject];

关于angular - PrimeNg数据表不刷新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42587424/

10-16 19:42