由于某些原因我在视图中失去了ngtable params的范围,ngtableparams中的所有内容都是未定义的(我在angularjs batarang绑定中看到)。
我的控制器代码是
this.contractsParams = new ngTableParams({
defaultSort: 'asc',
counts: [],
total: 10, // length of data
getData: function ($defer, params) {
this.MyService.query(
angular.bind( function (data) {
debugger;
$defer.resolve(data.Data);
}));
}
});
此外,getdata根本没有被调用。
我的观点
<table ng-table="controller.contractsParams">
<tr ng-repeat="contract in $data">
<td data-title="'Title'" data-sortable="'Title'">{{contract.Title}}</td>
</tr>
答案 0 :(得分:0)
丢失范围的问题可能源于ngTableParams
初始化,需要两个对象:参数和设置,请查看{{3} }。
所以简单的初始化看起来像:
$scope.tableParams = new ngTableParams(
/* parameters */
{
page: 1, // show first page
count: 10 // count per page
},
/* settings */
{
total: data.length, // length of data
getData: function($defer, params) {
$defer.resolve(data.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
从官方网站查看示例docs。
答案 1 :(得分:0)
通过将此片段添加到我的视图中来解决此问题
ng-controller =&#34; myController作为控制器&#34;