休息后,ngTable不会更新

时间:2015-12-23 23:20:42

标签: angularjs ngtable

我正在使用ngTable,并且有一个在$http请求的成功块中调用的函数:

$scope.setDataTable = function() {
    if($scope.tableData == undefined) return;
    $scope.tableParams = new ngTableParams({
        page: 1,            // show first page
        count: 10,          // count per page
        filter: {
            title: '',
            details: ''
        }
    }, {
        total: $scope.tableData.length, 
        getData: function($defer, params) {
            var filteredData = params.filter() ? $filter('filter')($scope.tableData, params.filter()) : $scope.tableData;
            var filteredDataPage = filteredData.slice((params.page() - 1) * params.count(), params.page() * params.count());
            params.total(filteredData.length);
            $scope.tableParams.total(filteredData.total);
            return $defer.resolve(filteredDataPage);
        }
    });
}

在与$http

的调用相同的控制器中调用它
    $http.
        post('/rest/TheData', { 
            args : $scope.args
        }).
        success(function(data){
            $scope.tableData = data;
            $scope.setDataTable();
        }).
        error(function(data){

        });

这是第一次工作,即第一次调用http成功时,表看起来是正确的。但是第二次,数据不会更新。我该怎么办?

我读过关于诸如

之类的黑客攻击
$scope.forceReloadTable = function(){
    $timeout($scope.setDataTable, 100)
}

但这没有帮助。

0 个答案:

没有答案