【问题标题】:Uncaught Error: [$rootScope:infdig]未捕获的错误:[$rootScope:infdig]
【发布时间】:2023-03-18 21:50:01
【问题描述】:

这是我的代码 sn-p

  <tbody ng-repeat="dtataOne in dataOnes()">
      <tr>
          <td>My Data</td>
          <td class="task-container ui-sortable" colspan="6" ng-model="dtataOne.MyModel" ui-sortable="sortableOptions" stafflastname="{{'Pup-Only'}}" data2="{{'999999'}}" task="{{100}}" data3="{{'No'}}">
            <a href="javascript:void(0);"  ng-repeat="tg in Getdata(data3)" ng-click="ShowData(tg)">{{tg.count}}</a>
          </td> 
     </tr>
 </tbody> 

控制器:

  $scope.Getdata = function(data3) {
        var datas = [];       
            data3.forEach(function (staff) {
                if (true) {
                    staff.tgs.forEach(function (tg) {
                        datas.push(tg);
                    });
                } 
        });

        $scope.data3s().forEach(function (datum) {
            if (datum.id === data3.id) {
                datum.MyModel = datas;
            }
        });
        return datas;
    };

在上面的代码sn-p中的“datum.MyModel = datas;”行我收到一条如下所述的错误消息

未捕获的错误:[$rootScope:infdig] http://errors.angularjs.org/1.2.13/$rootScope/infdig?p0=10&p1=%5B%

任何帮助都会挽救生命......

【问题讨论】:

    标签: javascript angularjs angularjs-scope angularjs-ng-repeat


    【解决方案1】:

    在每个摘要循环中,函数Getdata(data3) 将被触发。在那个函数中,你正在改变datum.MyModel,这会启动一个新的摘要循环。如果此操作重复超过 10 次,则会出现错误。

    简短的建议:不要在 ngRepeat 表达式中使用函数。

    【讨论】:

      猜你喜欢
      • 2016-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-26
      • 2017-06-14
      • 2011-02-24
      • 2014-09-28
      相关资源
      最近更新 更多