获得;无法读取属性';切片';“未定义”的定义;来自AngularJS$过滤器

获得;无法读取属性';切片';“未定义”的定义;来自AngularJS$过滤器,angularjs,filter,Angularjs,Filter,我正在使用AngularJS。我正在使用筛选器为显示数据的表创建分页。当所有内容都已加载时,过滤器可以正常工作,但最初它无法读取未定义内容的“切片”。我的猜测是,它运行之前,它有一些适当的数据来处理。我的问题是。我应该把它放在哪里?。现在它位于我的控制器文件的底部。它应该在一个单独的文件中吗?如果是,我该如何使用它 代码 我认为可以在控制器的开头初始化变量 甚至更好的是,在执行切片之前,您可以检查输入是否存在。像这样: app.filter('startFrom', function() {

我正在使用AngularJS。我正在使用筛选器为显示数据的表创建分页。当所有内容都已加载时,过滤器可以正常工作,但最初它无法读取未定义内容的“切片”。我的猜测是,它运行之前,它有一些适当的数据来处理。我的问题是。我应该把它放在哪里?。现在它位于我的控制器文件的底部。它应该在一个单独的文件中吗?如果是,我该如何使用它

代码


我认为可以在控制器的开头初始化变量

甚至更好的是,在执行切片之前,您可以检查
输入是否存在。像这样:

app.filter('startFrom', function() {
    return function(input, start) {
        if (!input || !input.length) { return; }
        start = +start;
        return input.slice(start);
    }
});

希望有帮助。

谢谢您,先生!。在这个项目上坐了5个小时,完全错过了这个解决方案。我想该上床睡觉了。
app.filter('startFrom', function() {
    return function(input, start) {
        if (!input || !input.length) { return; }
        start = +start;
        return input.slice(start);
    }
});