一个出现在加载页面可见

问题描述 投票:0回答:4

而页面加载消息来得快,消失活跃值是假的最初阶段。我试着用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;
  });
html angularjs
4个回答
1
投票

假设你正在使用的角度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>

0
投票

您是否尝试过在你的初始化它声明:

init() { $scope.item.active = true };
init();

0
投票

它的工作对我来说与以下变化,因为在页面加载从设置为true,消息控制器布尔值读取数据之前出现了一段时间

TS:calc.active = version.active;计算值[ 'showmessage'] = version.active!;

HTML:一秀= “item.showmessage”


-1
投票

有一个在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>
© www.soinside.com 2019 - 2024. All rights reserved.