你好,我是Angular js的新手。我使用Ng-Table模块向页面中添加钉住,过滤器。但是当我尝试运行以下代码时,它显示了未定义的排序。但是我发现未定义参数这就是为什么它给我带来一些不确定的错误。
$http({
url:"http://localhost:8080/",
dataType:'json',
method:'GET',
data:'',
headers:{
'Content-type':'application/json'
}
}).then(function (response) {
$scope.tableData = response.data;
$scope.tableParams = new NgTableParams({
page: 1,
count: 5
}, {
total: $scope.tableData.length,
getData: function ($defer, params) {
console.log(params);
$scope.data = params.sorting() ? $filter('orderBy')($scope.tableData, params.orderBy()) : $scope.tableData;
$scope.data = params.filter() ? $filter('filter')($scope.data, params.filter()) : $scope.data;
$scope.data = $scope.data.slice((params.page() - 1) * params.count(), params.page() * params.count());
$defer.resolve($scope.data);
}
});
});
问题我如何才能使其在angularjs1.6.1.js中正常工作?
当我输入以下代码时,它可以完美工作,但没有过滤器而不进行排序
$scope.tableParams = new NgTableParams({
page:1,
count:5
}, {
getData: function(params) {
params.total($scope.tableData.length);
return $scope.tableData.slice((params.page() - 1) * params.count(), params.page() * params.count());
}
}
);
答案 0 :(得分:1)
要在angularjs中使用排序,您需要将$ filter注入为依赖项
app.controller('TutorialController', function ($scope, $filter, ngTableParams) {