angularjs过滤器内的json解析会导致无限循环

时间:2012-11-09 01:55:38

标签: javascript jquery angularjs

我有一个过滤功能,可以进行同步ajax调用。函数的回调返回一个json对象,然后将该函数传递给filter函数的变量,然后将其作为过滤结果返回。仅当ajax调用的dataType设置为'json'时,才会进行无限循环的ajax调用。返回一个字符串时,没有无限循环。

为什么这个代码放在过滤器函数中会导致递归无限循环?

        var result;
        that = this;
        $.ajax({
            url: '/url/',
            async: false,
            dataType: 'json',
            type: 'get',
            success: function (links) {

                that.result = links;
            }
        });

        return that.result;

1 个答案:

答案 0 :(得分:0)

  1. 不要使用同步ajax cals。
  2. 不要在过滤器中使用长时间处理=在每个$摘要周期中调用过滤器,因此您在过滤器中长时间同步ajax调用只是一次又一次地冻结浏览器。