最近在写项目时经常遇到一个小问题,在上下文外改变视图,通常来说我们需要apply()便可以实现,问题是加了apply()后控制台报错:$digest already in progress;随后我把apply()去掉,结果视图并未刷新。
既然这样我们加上一个判断好了,如果在进程里,就不再执行,如果不在进程里,就执行 :
if(!$scope.$$phase) { //$digest or $apply }
问题解决!