Angularjs 在$evalAsync之后是否可以防止另一个$digest?
示例场景 伪码Angularjs 在$evalAsync之后是否可以防止另一个$digest?,angularjs,Angularjs,示例场景 伪码 撇开此处可能出现的无休止循环不谈-是否可以取消$evalAsync中的下一个$digest?供将来参考,我将回答自己的问题。。。。它可以通过$$postdgest scope.set_value ( user_input ) { scope.value = user_input; // trigger digest : evaluation of several validators // execute after digest and prio
撇开此处可能出现的无休止循环不谈-是否可以取消
$evalAsync
中的下一个$digest
?供将来参考,我将回答自己的问题。。。。它可以通过$$postdgest
scope.set_value ( user_input ) {
scope.value = user_input;
// trigger digest : evaluation of several validators
// execute after digest and prior to DOM rendering
scope.$$postDigest(function() {
// check if the value is valid based on
// validators calculated during the last digest
if ( !scope.is_valid() )
// trigger another digest with null value
scope.$apply( function () { scope.value = null; });
// NO CHANGE
});
scope.set_value ( user_input ) {
scope.value = user_input;
// trigger digest : evaluation of several validators
// execute after digest and prior to DOM rendering
scope.$$postDigest(function() {
// check if the value is valid based on
// validators calculated during the last digest
if ( !scope.is_valid() )
// trigger another digest with null value
scope.$apply( function () { scope.value = null; });
// NO CHANGE
});