所以,我有这个弹出窗口,默认情况下应该被ng-show隐藏,直到按下按钮 . 我的问题是,在没有硬刷新的情况下导航到这些页面时,弹出窗口最初显示然后淡出 .

我认为正在发生的事情是,由于某种原因,ng-show最初的评估结果为真,或者角度还没有实际编译过,所以弹出窗口通常会被显示并立即隐藏,但由于0.5s转型,它必须淡出 .

任何人都有任何想法为什么会发生这种情况,或者解决方法?

HTML:

<div class="test-fade" ng-show="completeAll">
  <p>You are about to complete some stuff</p>
  <button ng-click="doStuff()">Complete</button>
  <button ng-click="completeAll = false">Cancel</button>
</div>

<button ng-click="completeAll = true">
   <i class="fa fa-check"></i>
</button>

CSS:

.test-fade{
  -webkit-transition:all linear 0.5s;
  transition:all linear 0.5s;
}
  .test-fade.ng-hide{
  opacity:0;
}

JS控制器:

$scope.completeAll = false

因为我最初在我的控制器中将completeAll变量设置为false,所以我有一种下沉的感觉,这个问题源于角度的编译顺序或其他一些同样可怕的角度错综复杂 . 希望你们能帮忙!