将动态行添加到ngTable不显示

Ale*_*Man 1 javascript html-table dynamic angularjs ngtable

我使用分组功能创建了一个使用ngTable的应用程序,该应用程序工作正常,但问题是当我向表中添加动态数据(行)时,它不会动态反映,除非我们单击表标题进行排序或者当我们点击分页时

我在一个plunker中重新创建了这个问题,在那里你可以找到一个按钮,当点击一个动态行被添加但没有在表内反映

PLUNKER

  <body ng-app="main" ng-controller="DemoCtrl">
  <button ng-click="addDynamicDatas()">Add Datas</button>
    <table ng-table="tableParamsOne" class="table">
      <tbody ng-repeat="group in $groups">
        <tr class="ng-table-group" ng-hide="group.data[0].role==='None'">
          <td>
              <strong>{{ group.value }}</strong>
          </td>
        </tr>

        <tr ng-repeat="user in group.data">
          <td sortable="name" data-title="'Name'">
               <span ng-class="{'bold-text': user.role=='None'}" ng-show="user.role==='None'"> {{user.name}}</span>
            </td>
          <td sortable="age" data-title="'Age'">
                {{user.age}}
            </td>
        </tr>
      </tbody>
    </table>
  </body>   
Run Code Online (Sandbox Code Playgroud)

添加功能

$scope.addDynamicDatas = function()
{
   $scope.myDataOne.push({name: "Abcd", age: 10, role: 'Administrator'});
}
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我一些解决方案吗?

小智 5

这可能不是一个理想的解决方案,但却是我能找到的唯一解决方案.

您可以$scope.tableParamsOne.reload();在更新阵列后添加.

此外,当您单击标题时更新网格时,它不会更新分页中的页面数量.要解决此问题,您可以添加$scope.tableParamsOne.total($scope.myDataOne.length);