TypeError:Undefined不是函数 - AngularJS

时间:2014-11-01 10:15:25

标签: javascript angularjs pagination

我在我所做的概述页面上收到错误。 我为概览表创建了一个分页。 分页工作正常,但在加载页面时我收到错误:

  

" TypeError:undefined不是函数"。

我无法解决这个问题,我对AngularJS相对较新。 在最后一个返回行上的以下过滤器中发生错误:

AngularJS:

angular.module('app').filter('pagination', function(){
    return function(input, start)
    {
        start = +start;
        return input.slice(start);
    };
});

HTML:

    <tbody>
    <tr ng-repeat="question in questions | orderBy:order:reverse | filter:searchText | pagination: curPage * pageSize | limitTo: pageSize">
        <td>{{ question.text }}</td>
        <td>{{ question.times_asked }}x </td>
        <td>--%</td>
        <td>
            <button class="btn" ng-click="createModel(question.id)">
                <span class="glyphicon glyphicon-pencil"></span>
            </button>
        </td>
        <td>
            <button class="btn" ng-click="createDeleteModel(question.id)">
                <span class="glyphicon glyphicon-trash"></span>
            </button>
        </td><td>
    </tr>
    </tbody>

<div class="pagination pagination-centered" ng-show="questions.length">
<ul class="pagination-controle pagination">
 <li>
  <button type="button" class="btn btn-primary" ng-disabled="curPage == 0"
 ng-click="curPage=curPage-1"> &lt; Vorige pagina</button>
 </li>
 <li>
 <span>Pagina {{curPage + 1}} van {{ numberOfPages() }}</span>
 </li>
 <li>
 <button type="button" class="btn btn-primary"
 ng-disabled="curPage >= questions.length/pageSize - 1"
 ng-click="curPage = curPage+1">Volgende pagina &gt;</button>
 </li>
</ul>
</div>

提前致谢!

托马斯

1 个答案:

答案 0 :(得分:0)

如果输入是数组

,请在切片前检查
angular.module('app').filter('pagination', function(){
    return function(input, start)
    {
        start = +start;
        if(angular.isArray(input) && input.length > 0) {
             return input.slice(start);
        }
        //console.log(input);
        return input;
    };
});

您可以使用console.log来检查输入是否不是数组