primeNG 的 p-dataTable 无法从员工数组/Angular 4 中获取值

p-dataTable of primeNG counldnt fetch value from an array of employess /Angular4

没有显示数据 [value]="targetEmployeeonpopup" 在 html 当 ts 文件像:

  targetEmployeeonpopup: Employees[]=[]; 
  this.targetEmployeeonpopup.push({ uid: "aa",
          firstName: "aa",
          lastName: "aa",
          supervisorInd: true}); 

当ts为:

时显示
 this.targetEmployeeonpopup=[{ uid: "aa",
          firstName: "aa",
          lastName: "aa",
          supervisorInd: true}];

我可以就问题的任何原因获得反馈吗?

我相信您遇到的问题是由于 table 上的优化原因。

我相信 table 已优化为仅适用于检测策略 OnPush

意味着它不会检测对象的内部变化(突变)。当您执行 push 时,您正在改变对象而不是创建新的引用。

尝试做同样的事情,但改用 spread operator

类似于:

this.targetEmployeeonpopup = [...this.targetEmployeeonpopup,{ uid: "aa", firstName: "aa", lastName: "aa", supervisorInd: true}];

spread operator 将使用新元素创建一个新对象。这将在 table 上触发 Angular 变化检测。因为它不会改变原始对象。