Angularjs 不寻常;“达到10美元摘要迭代次数”;案例 摘要
大家好,我想大家都遇到了一个题为“Angularjs 不寻常;“达到10美元摘要迭代次数”;案例 摘要,angularjs,Angularjs,大家好,我想大家都遇到了一个题为“10$digest iterations reated”的问题。通常,它是由递归地更改角度表达式引起的,该表达式从不停止更改,或者在每个摘要周期中观察到的表达式生成新实例 我的问题是,我的代码中没有上述问题。我面临这个问题的原因是我在UI中有相当复杂的嵌套级别,需要10个以上的摘要周期来评估 为了通过删除问题消失的html来证明这一点: <div class="row"> <div class="col-sm-6">
10$digest iterations reated
”的问题。通常,它是由递归地更改角度表达式引起的,该表达式从不停止更改,或者在每个摘要周期中观察到的表达式生成新实例
我的问题是,我的代码中没有上述问题。我面临这个问题的原因是我在UI中有相当复杂的嵌套级别,需要10个以上的摘要周期来评估
为了通过删除问题消失的html来证明这一点:
<div class="row">
<div class="col-sm-6">
<p>Name</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.name">
<p>ICAO</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.ICAO">
<p>IATA</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.IATA">
<p>Crew</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.crew">
<p>Weight</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.weight">
</div>
<div class="col-sm-6">
<p>Manufacturer</p>
<input type="text" class="form-control m-b-10" placeholder="Value not set" ng-disabled="workspace.mode === 'read'" ng-model="workspace.aircraftType.manufacturer">
</div>
</div>
名字
国际民航组织
国际航空运输协会
船员
重量
制造商
问题:
在这一点上更改架构不是我编写许多代码的一个选择,因此如何将10个摘要周期的限制增加到20个摘要周期?要直接回答您的问题,您可以按如下方式更改摘要周期的数量:
app.config(function($rootScopeProvider){
$rootScopeProvider.digestTtl(20);
});
但是,我谨慎地建议将此作为一种通用方法,因为问题很可能存在于代码的其他地方(问题中未指定),而它只是在本节中体现出来。摘要周期的数量不应该是嵌套的函数,因此达到10本身就是一个问题。也许可以尝试根据数据结构将其分解为一些ng重复逻辑,而不是单独进行?我可能会阅读本文。他深入讨论了
$eval
、$digest
、$$phase
等。他展示了如何测试迭代次数、如何优化以及如何在必要时修改实现。警告:这是对angular内部工作原理的一次非常深入的技术探讨。非常感谢@New Dev,我会认真对待它,并尝试确定问题并优化整体架构,但不是现在,谢谢Preciated+1。好奇的是,它到底是推出了angular1.3
/1.4
,还是已经存在了?@pankajparkar,快速浏览一下就可以看出它至少从v1.1开始就存在了。0@NewDev谢谢你,小伙子今天我学到了新东西谢谢你,先生。。