1
如果有问题。 请帮我看看有什么不对。AngularJS分页和无法读取未定义的属性“片”
有我的代码:
(function() {
var app = angular.module('store', ['ui.bootstrap']);
app.controller('StoreController', function ($scope, $http) {
$scope.pageSize = 20;
$scope.currentPage = 1;
$http.get("../scripts/products.php").success(function (data) {
$scope.products = data;
});
}).filter('startFrom', function() {
return function (data, start) {
return data.slice(start);
};
});
})();
和HTML:
<div class="col-md-2 product " ng-hide="product.soldOut" ng-repeat="product in products| orderBy:sortorder | filter: searchBox | startFrom:(currentPage - 1) * pageSize | limitTo: pageSize">
<img src="../products/{{product.image}}">
<h4>{{product.nazwa}}
<br>
<br>
</h4>
<strong>{{product.cena| currency:"PLN "}}</strong>
<div class="colored">{{product.usagee}}</div>
<div class="buttons">
<a href="/product/{{product.id}}" class="btn btn-default btn-sm" style="">Szczegóły</a>
<a href="/product/{{product.id}}" class="btn btn-success btn-sm" ng-show="product.dostepny">Kup</a>
</div>
</div>
<div class="col-md-12">
<uib-pagination class="pagination-sm" previous-text="Poprzednia" next-text="Następna" total-items='products.length' ng-model='currentPage' items-per-page='pageSize'></uib-pagination>
</div>
我正在寻找在谷歌和堆栈,但我找不到什么好的解决办法。
会发生什么情况是过滤器在从服务器返回数据之前被调用。 – toskv
不,它不重复... –
看来产品还没有定义。在数据被定义的过滤器中添加一个检查。其他方法是初始化产品以清空控制器中的数组 – Dvir