我有一个菜单,当某个按钮被按下时会滑动,但是在开始时这个菜单是隐藏的,类似的东西:
<div ng-show="menuShow">
my menu here...
</div>
Run Code Online (Sandbox Code Playgroud)
问题是当页面被加载时,菜单没有被隐藏(可能是因为没有加载ngShow指令)然后它们消失(可能是因为加载了ngShow指令)并且使用菜单产生奇怪的"闪烁效果".
处理这个问题的最佳方法是什么?
Mic*_*mza 16
最快捷最简单的方法是将ngCloak指令添加到元素中.
<div ng-show="menuShow" ng-cloak>
my menu here...
</div>
Run Code Online (Sandbox Code Playgroud)
只要在文档的头部同步加载Angular,就可以防止闪烁.
如果您没有同步加载Angular,那么根据文档,您可以手动将CSS添加到页面:
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
display: none !important;
}
Run Code Online (Sandbox Code Playgroud)
如果这是不可能因为某些原因,你可以你就必须全部内容角度没有在初始加载的页面,而是包括一个ng-include,ng-view或ui-view指令,或包括其自己的模板的自定义指令.(这是我这样做的,但更多是出于结构原因)