angualr 之 $$phase

Posted Milk.╮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angualr 之 $$phase相关的知识,希望对你有一定的参考价值。

对于angular,

$$phase 是 作为angular 内部状态表示位,用来标示当前是处于哪个阶段。

用有的阶段有

$digest

$apply

在使用的是例如你想调用scope.$apply的时候,经常会遇到这样的错误

Error:$apply already in progress

为了预防这样的错误,

有人是这么写的

if (!scope.$$phase && !scope.$root.$$phase){//脏值检测
    scope.$apply();  
}

一个合理的做法

就是使用$timeout 代替使用,这种写法是目前最好的方法了。

$timeout(function(){//angular本身检测不到异步操作,比如原生的定时器,所以要用angular内部的$timeout
    // anything you want can go here and will safely be run on the next digest. })

以上是关于angualr 之 $$phase的主要内容,如果未能解决你的问题,请参考以下文章

JSF教程——生命周期之Apply Request Values Phase

angualr项目table拖拽列宽效果

Angualr2 ChartModle图表

通信算法之113:信道频偏相偏及comm.Phase Frequency Offset

精通Java事务编程-可串行化隔离级别之两阶段锁定(2PL,two-phase locking)

Angualr 内置工具-SelectionModel