我正在通过使用angularjs作为前端来开发Web应用程序。我正在使用ngTable进行表设计。在我的index.html中,添加以下代码。
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script type="text/javascript" src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<link rel="stylesheet"; href="https://unpkg.com/[email protected]/bundles/ng-table.min.css">
<script src="https://unpkg.com/[email protected]/bundles/ng-table.min.js"></script>
接下来,我将ngTable添加到我的app.js中
angular.module('AssetManagementApp', ['ngRoute','angularMoment', 'ngTable'])
但是当我将ngTable添加到controller.js中时。以下是我的代码。
angular.module('AssetManagementApp')
.controller('PCAssetManagementController', ['$scope', '$http', function($scope, $http){
$scope.softwareTable = new ngTableParams({
page: 1,
count: 10
}, {
total: $scope.users.length,
getData: function ($defer, params) {
$scope.data = $scope.users.slice((params.page() - 1) * params.count(), params.page() * params.count());
$defer.resolve($scope.data);
}
});
}])
当我将“ ngTable”注入控制器时,Web应用程序崩溃。如果我在controller.js中删除ngTable。应用程序恢复正常。但是,当将“ ngTable”注入app.js时,该应用程序仍然可以正常运行。
最佳答案
您还必须将ngTableParams
注入到控制器中:
angular.module('AssetManagementApp').controller('PCAssetManagementController', ['$scope', '$http', 'NgTableParams', function($scope, $http, NgTableParams){
$scope.softwareTable = new NgTableParams({
page: 1,
count: 10
}, {
total: $scope.users.length,
getData: function ($defer, params) {
$scope.data = $scope.users.slice((params.page() - 1) * params.count(), params.page() * params.count());
$defer.resolve($scope.data);
}
});
}])