【问题标题】:ngIf component shows briefly when it's not supposed to appearngIf 组件在不应该出现时短暂显示
【发布时间】:2017-10-23 18:37:21
【问题描述】:

这是 Angular 4 应用程序 我有一个自定义组件,它应该在函数返回 true 时显示;

 <card *ngIf="isWrongStation()">

但是当页面被导航时,这个组件会显示几毫秒然后消失。

有什么办法吗?

【问题讨论】:

  • 它可以在 Angular 4 中工作吗?
  • ng-cloak 用于 angularjs

标签: javascript angular angular-ui-router


【解决方案1】:

您的isWrongStation() 方法是什么样的?如果是基于检查属性值的测试,也许你可以给它一个默认值,以便在评估条件之前语句默认为一个可预测的值。

例如,在您的组件类中将 station = ''; 用于 station 初始设置为空字符串值。

【讨论】:

    【解决方案2】:

    您实际上可以拥有一个名为 isLoaded 的变量,并在满足您的条件时使其为真

    <card *ngIf="isLoaded && isWrongStation()">
    

    【讨论】:

    • @Sanjeetharan 处理这个问题的任何其他想法。因为我必须使用一个额外的变量。
    • 这样就可以了,不然你可以用canacativate但是太贵了
    • 我在想在 *ngIf 中调用函数意味着它会调用多次。这对我们的项目绩效有好处吗?我想知道一般概述。
    • 有一个逻辑需要返回真假。您是否建议设置一个布尔变量并改用该变量?
    • @Sajeetharan 我正在尝试您的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    • 2015-11-12
    • 2018-01-05
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多