рдореИрдВ .json рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдкреЗрдЬреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рд╕рднреА рдбреЗрдЯрд╛ рд╕рд┐рдВрдЧрд▓ рдкреЗрдЬ рдореЗрдВ рдЖрддрд╛ рд╣реИ; рдРрд╕рд╛ рдХреНрдпреЛрдВ? рдиреАрдЪреЗ рдореЗрд░рд╛ рдХреЛрдб рд╣реИ
$http.get('app/user_keys.json').success(function(data) {
vm.data = data;
vm.tableParams = new NgTableParams({ page: 1, count: 2 }, {
total: vm.data.length,
getData: function (params) {
console.log(vm.data.length);
var deferred = $q.defer();
var orderedData = params.sorting() ? $filter('orderBy')(vm.data, params.orderBy()) : vm.data;
deferred.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
});
<table ng-table="vm.tableParams" class="table table-striped" >
<colgroup>
<col width="5%"/>
<col width="30%"/>
<col width="50%"/>
<col width="15%"/>
</colgroup>
<tr ng-repeat="row in vm.data | filter: searchText track by $index">
<td header="'headerCheckbox.html'">
<input type="checkbox" value="row._id" ng-model="vm.checkboxes.items[row._id]" ></td>
<td data-title="'ID'">{{ row.index }}</td>
<td data-title="'Cloud Location'">{{ row.location }}</td>
<td data-title="'Action'"><i class="fa fa-trash"></i></td>
</tr>
</table>
рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рд╕реНрд░реЛрдд рдПрдХ JSON рдлрд╝рд╛рдЗрд▓ рд╣реИ?
рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЗрд░рд╛ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдПрдХ рд╕реЗрд╡рд╛ рд╣реИред
рд╡рд╣ рд╕реЗрд╡рд╛ рдПрдХ рд╡рд╛рджрд╛ рд▓реМрдЯрд╛рддреА рд╣реИ рдФрд░ рдЬрдм рдпрд╣ рд╣рд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИ рддреЛ рдореИрдВ params.total()
рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдкреЗрдЬрд┐рдиреЗрд╢рди рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рд╕рдореВрд╣ рдбреЗрдЯрд╛ рдкрд░ рдкреЗрдЬрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рддреЛ, рдореИрдВ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЕрдВрдд рдореЗрдВ getGroups рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВред
if (!settings.dataOptions.applyPaging) {
return ngTableDefaultGetData(result, params);
}
return ngTableDefaultGetData.applyPaging(result, params);
рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдпрд╛ рдХрд╕реНрдЯрдо рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдкреЗрдЬрд┐рдиреЗрд╢рдиред
рд╣рд╛рдВ, рдпрд╣ рд▓рдЧрднрдЧ рд╡рд╣реА рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ #872 рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ settings.dataOptions.applyPaging
рдЪреЗрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдКрдкрд░ рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЧрд▓рдд рдкрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
@ fsm3xpert , @tandibar , рдореИрдВрдиреЗ @ fsm3xpert рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрдкрдиреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд┐рдореНрди рдорд┐рд▓рддрд╛ рд╣реИ:
Possibly unhandled rejection: {}
рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?
рдареАрдХ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ dataOptions
undefined
$ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рддреЛ рдХреЛрдб рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
if (settings.dataOptions && !settings.dataOptions.applyPaging) {
return ngTableDefaultGetData(result, params);
}
BTW, рдПрдирдЬреА-рдЯреЗрдмрд▓ рдХреА рднрд╡рд┐рд╖реНрдп рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ рдХрд┐ рдиреЗрд╕реНрдЯреЗрдб рд╕реЗрдЯрд┐рдВрдЧ рдорд╛рди (рдИрдЬреА
dataOptions) рдХрднреА рднреА рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ
рдмреБрдзрд╡рд╛рд░, 21 рджрд┐рд╕рдВрдмрд░, 2016 рдХреЛ рд╢рд╛рдо 7:19 рдмрдЬреЗ, рдорд╛рд░рд┐рдпрд╛ рдЗрдиреЗрд╕ рдкрд░рдирд┐рд╕рд╛рд░реА <
рд╕реВрдЪрдирд╛рдПрдВ@github.com> рдиреЗ рд▓рд┐рдЦрд╛:
рдареАрдХ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛рдСрдкреНрд╢рди рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рдХреЛрдб
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПрдЕрдЧрд░ (рд╕реЗрдЯрд┐рдВрдЧреНрд╕.рдбреЗрдЯрд╛рдСрдкреНрд╢рдиреНрд╕ &&!рд╕реЗрдЯрд┐рдВрдЧреНрд╕.рдбреЗрдЯрд╛рдСрдкреНрд╢рдиреНрд╕.рд▓рд╛рдЧреВрдкреЗрдЬрд┐рдВрдЧ) {
рд╡рд╛рдкрд╕реА ngTableDefaultGetData (рдкрд░рд┐рдгрд╛рдо, рдкреИрд░рд╛);
}-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдереНрд░реЗрдб рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/esvit/ng-table/issues/893#issuecomment-268614815 , рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AA2HPk4I47xMpIlEbXSDSCMUu0mlGn7Vks5rKXu4gaJpZM4Jagxg
.
рдпрджрд┐ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдореЗрд░реЗ рдЬреИрд╕рд╛ рд╣реА рдореБрджреНрджрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛрдб рдХреЛ рдмрджрд▓рдирд╛ рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ, рддреЛ рдореБрдЭреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛:
рдореБрджреНрджрд╛ рдпрд╣ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдкреГрд╖реНрдард╛рдВрдХрд┐рдд рдбреЗрдЯрд╛ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдореВрд╣реАрдХрд░рдг рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╡рд╣ рд╡рд╛рдВрдЫрд┐рдд рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдбреЗрдЯрд╛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдФрд░ рдПрдХ рдЪрд░ рдореЗрдВ рдХреБрд▓ рдЖрдЗрдЯрдореЛрдВ рдХреЛ рдХреИрд╢ рдХрд░рдирд╛ рд╣реИред
actualTotal = params.total()
рдЗрд╕рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ http://ng-table.com/#/global -customization/demo-response-interceptors рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред рд╡рд╣рд╛рдВ рдореИрдВ рдХреБрд▓ рдорд╛рди рдХреЛ рдХреИрд╢реНрдб рдорд╛рди рдкрд░ рд╡рд╛рдкрд╕ рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рдкреЗрдЬрд┐рдВрдЧ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред
рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╢реЗрд╖ рд╣реИ, рдЬреЛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 1 рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рддреЛ рдЖрдкрдХреЛ рдХреБрдЫ рднреА рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕рдореВрд╣ рдЗрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд╕рд░рдгреА рдХреЛ рд╕реНрд▓рд╛рдЗрд╕ рдХрд░рддрд╛ рд╣реИ:
var pagedData = data.slice((params.page() - 1) * params.count(), params.page() * params.count());
рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдЙрдкрд╛рдп рдпрд╣ рднреА рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЧреЗрдЯрдбреЗрдЯрд╛ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкреГрд╖реНрда рдХреЛ 1 рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреГрд╖реНрда рдХреЛ рдХреИрд╢ рдХрд░реЗрдВ рдФрд░ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯрд░ рдореЗрдВ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВред
рд╕реБрдЭрд╛рдП рдЧрдП рдлрд╝рд┐рдХреНрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ред рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рдХреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ, рдореБрдЭреЗ dataOptions
рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗрдЯ рдХрд░рдирд╛ рдерд╛:
settings.dataOptions = { applyPaging: false, applyFilter: false };
рдХреНрдпрд╛ рдпрд╣ рд╕реБрдзрд╛рд░ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ рддреЛ рдХрд┐рд╕ рд▓рд╛рдЗрди рдкрд░ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдпрд╣ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рдпрд╣ рдХреЛрдб рдХреЗ рдЗрд╕ рдЦрдВрдб рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:
if (sortDirection) {
var orderByFn = ngTableDefaultGetData.getOrderByFn();
var orderBy = util_1.convertSortToOrderBy({
value: sortDirection
});
result = orderByFn(result, orderBy);
}
return ngTableDefaultGetData.applyPaging(result, params);
рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА:
if (sortDirection) {
var orderByFn = ngTableDefaultGetData.getOrderByFn();
var orderBy = util_1.convertSortToOrderBy({
value: sortDirection
});
result = orderByFn(result, orderBy);
}
рдЕрдЧрд░ (рд╕реЙрд░реНрдЯрдбрд╛рдпрд░реЗрдХреНрд╢рди) {
var orderByFn = ngTableDefaultGetData.getOrderByFn ();
var orderBy = util_1.convertSortToOrderBy({
value: SortDirection
});
рдкрд░рд┐рдгрд╛рдо = рдСрд░реНрдбрд░рдмреАрдПрдлрдПрди (рдкрд░рд┐рдгрд╛рдо, рдСрд░реНрдбрд░рдмреА);
}
рдЕрдЧрд░ (!settings.dataOptions.applyPaging) {
ngTableDefaultGetData(result, params);
}
рд╡рд╛рдкрд╕реА ngTableDefaultGetData.applyPaging(result, params);`
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдареАрдХ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐
dataOptions
undefined
$ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рддреЛ рдХреЛрдб рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП