angularjs – 抛出Angular.js表达式的异常

前端之家收集整理的这篇文章主要介绍了angularjs – 抛出Angular.js表达式的异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这可以配置吗?

here开始,表达是宽容的,但我想知道我的错误是什么.

Forgiving: In JavaScript,trying to evaluate undefined properties generates ReferenceError or TypeError. In Angular,expression evaluation is forgiving to undefined and null.

解决方法

实际上有,

在Angular中,$interpolate服务负责处理绑定表达式,因为此服务是宽容的,您不会看到任何错误.但是,您可以为它创建包装器,以便在可能产生错误结果时通知它.

以下代码来自http://odetocode.com/ See this blog post

app.config(function($provide){
    $provide.decorator("$interpolate",function($delegate){

        var interpolateWrap = function(){
            var interpolationFn = $delegate.apply(this,arguments);
            if(interpolationFn) {
                return interpolationFnWrap(interpolationFn,arguments);
            }
        };

        var interpolationFnWrap = function(interpolationFn,interpolationArgs){
            return function(){
                var result = interpolationFn.apply(this,arguments);
                var log = result ? console.log : console.warn;
                log.call(console,"interpolation of  " + interpolationArgs[0].trim(),":",result.trim());
                return result;
            };
        };

        angular.extend(interpolateWrap,$delegate);
        return interpolateWrap;

    });
});

猜你在找的Angularjs相关文章