从 AngularJS $Filter 获取“无法读取未定义的属性‘slice’”
2017-11-05
40
我正在使用 AngularJS。我正在使用过滤器为显示数据的表格创建分页。当所有内容都已加载时,过滤器工作正常,但最初,它无法读取未定义的“切片”。我猜它在有适当的数据可供使用之前就运行了。我的问题是。我应该把它放在哪里?现在它位于我的控制器文件的底部。它应该放在单独的文件中吗?如果是这样,我该如何使用它?
代码
app.filter('startFrom', function () {
return function (input, start) {
start = + parseInt(start);
return input.slice(start);
}
});
1个回答
我认为您可以在控制器开始时初始化变量。
或者更好的是,您可以在进行切片之前检查
input
是否存在。像这样:
app.filter('startFrom', function() {
return function(input, start) {
if (!input || !input.length) { return; }
start = +start;
return input.slice(start);
}
});
希望对您有所帮助。
WilsonPena
2017-11-05