刷新时mdDataTable重复数据

时间:2016-10-23 19:37:08

标签: javascript angularjs angular-material

我使用mdDataTable来显示普通的表格数据列表。当代码首次初始化并加载数据表时,它包含由下面的Web服务调用返回的5行。一切都是应有的。

稍后调用Web服务刷新数据时,它会返回预期的5行,并将数组分配给名为' logAnalysis'。

的值。

问题是数据表将5个新行追加到显示中并留下5个原始行。

当我检查' logAnalysis' value有任意5行的数组。 就像数据表采用放入数组中的任何值并将它们附加到内部数组然后显示内部数组一样。

对我而言,这种行为毫无意义。我错过了什么?

模板HTML:

<mdt-table>
<mdt-header-row>
    <mdt-column align-rule="left">Name</mdt-column>
    <mdt-column align-rule="right">Log Count</mdt-column>
    <mdt-column align-rule="right">Error Count</mdt-column>
    <mdt-column align-rule="right">File Size</mdt-column>
    <mdt-column align-rule="right">Time of Last Error</mdt-column>
</mdt-header-row>
<mdt-row ng-repeat="item in vm.logAnalysis">
    <mdt-cell>{{item.name}}</mdt-cell>
    <mdt-cell>{{item.logCount}}</mdt-cell>
    <mdt-cell>{{item.errorCount}}</mdt-cell>
    <mdt-cell>{{item.fileSize}}</mdt-cell>
    <mdt-cell>{{item.timeOfLastError | date : 'medium' }}</mdt-cell>
</mdt-row>
</mdt-table>

Controller Javascript:

        $http.get('api/servicelog/counts').then(function (response) {
            vm.logAnalysis = response.data;
        });

提前谢谢你, 吉姆

0 个答案:

没有答案