我这里说的页面闪烁分两种,一种是{{ }}插值表达式未被angular渲染完成造成的闪烁,另外一种是页面本身结构存在,但是我们希望在一开始的时候隐藏他,到angular加载完毕或者完成了一系列的操作之后再显示.
1. 对于第一种情况,有两种解决方法.一是加 ng-cloak 属性,二是使用 ng-bind 代替插值表达式.
2. 对于第二种情况,我一开始想到的是css定义要隐藏的块 display:none; 然后用 ng-show 或者 ng-if 控制到对应的时机显示.但是这样子是不行的,angular并没有在ng-show为true时改变css的display值.好了,说完自己的坑,下面就说我的解决方案,很简单,加上 ng-cloak类 到要隐藏的块上即可,angular会在自己加载完成的时候显示该块,要控制显示时机别忘记加上
ng-show 或者 ng-if 哦.