【发布时间】:2018-04-23 14:20:06
【问题描述】:
我有一个在启动时有一个加载微调器的屏幕。在这个屏幕上,我有一个将属性传递给指令的控制器。该指令具有基于此属性的 ng-show。
将上述属性设置为 true 后,我希望指令显示内容,并且希望控制器隐藏加载微调器。
发生的事情是,在指令渲染 ng-show 之前,微调器被隐藏了。这会导致闪烁。我希望该指令在我隐藏微调器时完全加载。
这是在控制器中:
showSpinner();
$scope.showContent = true;
hideSpinner();
这是指令初始化器:
<div content-directive show-content="showContent "></div>
这是我将属性传递到我的指令中:
return {
scope:
{
showContent : "="
}
};
这是我的指令标记:
<div ng-show="showContent ">
<div style="width: 100px; height: 100px; background-color:dodgerblue"></div>
</div>
【问题讨论】:
-
也许将
hideSpinner()扔到$timeout()中? -
@Lex 这肯定不对吧?
-
干杯 @Lex 虽然这不是问题,但它能够帮助我用同事的代码诊断问题。
标签: javascript angularjs angularjs-directive controller