Sto utilizzando un'implementazione abbastanza semplice della direttiva di impaginazione dell'interfaccia utente Bootstrap di Angular, tuttavia continuo a ricevere un errore che non riesco a capire. Ecco i frammenti rilevanti:
<ul>
<li ng-repeat="todo in filteredIdeas">
{{todo}}
</li>
</ul>
<pagination ng-model="currentPage" total-items="totalIdeas"></pagination>
Qui ci sono le porzioni rilevanti della mia $ portata nel controller:
// Set watch on pagination numbers
$scope.$watch('currentPage + numPerPage', function() {
var begin = (($scope.currentPage - 1) * $scope.numPerPage);
var end = begin + $scope.numPerPage;
$scope.filteredIdeas = $scope.ideasData.slice(begin, end);
});
// Data
$scope.ideasData = [];
for (var i = 0; i < 100; i++) {
$scope.ideasData.push('To do ' + i);
}
$scope.filteredIdeas = [];
$scope.currentPage = 1;
$scope.numPerPage = 10;
$scope.totalIdeas = $scope.ideasData.length;
l'impaginazione set si correttamente, ma qui è l'errore che ricevo quando si cerca di fare clic su la pagina successiva (o qualsiasi pagina, è per questo):
Error: [$compile:nonassign] Expression 'undefined' used with directive 'pagination' is non-assignable!
Se ho capito bene, questo indica che sto usando qualcosa in modo non corretto per il legame a doppio senso? È stato in grado di replicare il bug in questo Plunkr: http://plnkr.co/edit/uyWQXPqjLiE4qmQLHkFy
Qualcuno ha qualche idea su cosa sto facendo male?
Heres tuo plunkr biforcuta: http://plnkr.co/edit/BNgdbXD5YVwPKGhuIYcN?p=preview – aet
Mi piace il tuo $ orologio, ma IMO questo è meglio : http://plnkr.co/edit/79yrgwiwvan3bAG5SnKx?p=preview –