我们可以将两个布尔变量之一传递给子组件吗?

时间:2019-09-13 11:54:03

标签: angular

我有一个用于加载微调器的组件。两个布尔值中的任何一个为true时如何加载组件。

<custom-component [loading]="loading"></custom-component> 
<custom-component [loading]="loadClass"></custom-component>  

现在,我可以用一行这样的代码吗?

<custom-component [loading]="loading || loadClass"></custom-component>

2 个答案:

答案 0 :(得分:0)

我将提供一个可以为您检查的功能。看起来可能像这样。

这意味着,如果加载逻辑与||不同,您可以轻松地将其添加到逻辑中。

<app-loading-spinner [loading]="isLoading()"></app-loading-spinner>

然后是一个简单的函数,可以检查并返回值,该逻辑可以随时间扩展。

public isLoading(): boolean
{
    if (this.loading || this.loadClass)
    {
        return true;
    }

    return false;
}
  

现在,我可以用一行这样的代码来制作上述代码吗

应该起作用,因为它将检查一个或另一个是否为真,如果是则为true,否则为false。

您应该可以通过在子组件中设置@Input public loading: boolean并检查其值来测试事物。

答案 1 :(得分:-1)

*ngIf="cond1 && cond2"应该可以解决您的问题。