首页 > angular directive中调用highchart报错

angular directive中调用highchart报错

在指令中掉用highchart报错了245个错,报错内容是 illegal invocation 和 digest 循环达到上限,代码如下

.directive('highchart',function($timeout){
    return{
        restrict:'E',
        template:'<div></div>',
        scope:{
            config:'='
        },
        link:function(scope, ele, attr) {
            var handle;
            scope.$watch('config',function(cfg){
                if(handle){
                    $timeout.cancel(handle);
                }
                handle = $timeout(function(){
                    console.log(ele.find('div'),scope.config)
                    ele.find('div').highcharts(scope.config)
                },250)
            })
        }
    }
})

我在chrome的控制台里把log的变量调用是没报错的,highchart动作何处触发了angular的循环


问题出在对象上,复制下对象就可以了


我觉得应该是你link里的scope.$watch()

【热门文章】
【热门文章】