Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用于分页的AngularJS自定义筛选器_Javascript_Angularjs - Fatal编程技术网

Javascript 用于分页的AngularJS自定义筛选器

Javascript 用于分页的AngularJS自定义筛选器,javascript,angularjs,Javascript,Angularjs,我在我的app.js文件中实现了以下过滤器(startFrom): app.filter('startFrom', function () { return function (input, start) { start = +start; return input.slice(start); } }); 我以非同步方式修改数据,并在页面加载时应用过滤器。 问题是使用过滤器时数据不可用 <div cl

我在我的
app.js
文件中实现了以下过滤器(
startFrom
):

app.filter('startFrom', function () {
        return function (input, start) {
            start = +start;
            return input.slice(start);
        }
    });
我以非同步方式修改数据,并在页面加载时应用过滤器。 问题是使用过滤器时数据不可用

<div class="panel panel-default" ng-repeat="hotel in hotels | filter:search | startFrom:currentPage*itemsPerPage | orderBy:sortBy.Name :order.reverse | limitTo:itemsPerPage">

数据可用后,如何应用筛选器?

“筛选器应始终检查其输入的有效性。 输入可能是异步操作的结果, 所以过滤器不能确定输入总是什么 当它被评估时,它是预期的。”

因此,不妨试试这个

 app.filter('startFrom', function () {
    return function (input, start) {
        if (!angular.isArray(input)) {
            return [];
        }
        start = +start;
        return input.slice(start);
    }
});

您还没有编写,但尝试只使用搜索和分页筛选器,有时其他筛选器可能是问题所在,因此您可以确定问题出在分页筛选器中

我强烈建议让后端端点返回分页数据,而不是尝试从前端执行此操作。