我是AngularJS的新手,因此,我想我完全不了解某些事情的运作方式。
但是,我已经实现了一个Angular-Datatable,它填充了279条记录。在每个记录(行)上,我根据在线文档显示了一个可选择的复选框,但是我在运行性能测试时发现的是Angular为每一行设置了观察者。我还有一个1分钟计时器的页面,通过.reloadData()
调用重建数据表。
构建列的代码......
$scope.dtColumns = [
DTColumnBuilder.newColumn(null).withTitle('').notSortable()
.renderWith(function(data, type, row, meta) {
$scope.selected[row.dev_id] = $scope.selectAll;
return '<input type="checkbox" ng-click="toggleOne(selected)" ng-model="selected[' + data.dev_id + ']" ng-cloak />';
}).withClass("text-center"),
DTColumnBuilder.newColumn('dev_id').withTitle('ID'),
...
......导致观察者#39;每分钟增加558(如下所示),直到我的浏览器最终因内存错误而崩溃。
我的ng-model="selected[' + data.dev_id + ']"
中的dtColumns
似乎导致了这个问题。
每次刷新时我是否需要清除某些内容?
我正在使用Chrome。