而页面加载消息来得快,消失活跃值是假的最初阶段。我试着用NG-如果NG-斗篷但没有成功:
HTML
<div ng-show="!item.active" class="dialog-expired-calculation alert alert-danger" role="alert" ng-cloak>
<h4 class="redText boldText" translate="parkingPlace.inactive-title"></h4>
</div>
TS
calculations.forEach(calc => {
calc.active = version.active;
});
假设你正在使用的角度1.x的 - 你可以定义一个loading
旗,只要它是真实的隐藏/显示你想要的画面的一部分。
像这样的东西可能工作 -
// at the top of the page
$scope.loading = true;
// make your http calls, calculations, etc.
calculations.forEach(calc => {
calc.active = version.active;
});
// once all http calls and calculations are done
$scope.loading = false;
// HTML
<div ng-show="!loading && !item.active" class="dialog-expired-calculation alert alert-danger" role="alert" ng-cloak><h4 class="redText boldText" translate="parkingPlace.inactive-title"></h4></div>
或者你也可以使用ng-if
除了ng-show
<div ng-if="!loading" ng-show="!item.active" class="dialog-expired-calculation alert alert-danger" role="alert" ng-cloak><h4 class="redText boldText" translate="parkingPlace.inactive-title"></h4></div>
您是否尝试过在你的初始化它声明:
init() { $scope.item.active = true };
init();
它的工作对我来说与以下变化,因为在页面加载从设置为true,消息控制器布尔值读取数据之前出现了一段时间
TS:calc.active = version.active;计算值[ 'showmessage'] = version.active!;
HTML:一秀= “item.showmessage”
有一个在Angular2 +无ng-show
。使用ngIf如下:
<div *ngIf="!item.active" class="dialog-expired-calculation alert alert-danger"
role="alert">
<h4 class="redText boldText" translate="parkingPlace.inactive-title"></h4>
</div>