报错概要:
TypeError: Cannot read property 'slice' of undefined
报错内容:
angular.js:12450 TypeError: Cannot read property 'slice' of undefined
at controller.js:1383
at fn (eval at compile (angular.js:13275), <anonymous>:4:217)
at regularInterceptedExpression (angular.js:14335)
at Object.expressionInputWatch [as get] (angular.js:14237)
at Scope.$digest (angular.js:15751)
at Scope.$apply (angular.js:16030)
at done (angular.js:10545)
at completeRequest (angular.js:10717)
at XMLHttpRequest.requestLoaded (angular.js:10658)
出错源码:
app.filter('split_last_letter',function() { //可以注入依赖
return function(text) {
return text.slice(0,-2)
};
});
修正源码:
app.filter('split_last_letter',function() { //可以注入依赖
return function(text) {
if (!text) { return; }
return text.slice(0,-2)
};
});
错误分析:
当angular 第一次执行 $digsest 循环的时候,它会执行自定义的过滤器,而此时是没有值的所有会报错