【问题标题】:ternary operation in blazor, convert a if-else statement into just one statementblazor 中的三元运算,将 if-else 语句转换为一个语句
【发布时间】:2023-01-07 20:57:52
【问题描述】:

我在 page.razor 中有以下代码:

                    @if (i==1)
                    {
                        <MudTimelineItem  Color="Color.Primary" Size="Size.Medium" Variant="Variant.Outlined">
                            <MudAlert Severity="Severity.Success">@matrix.UserName</MudAlert>
                        </MudTimelineItem>
                    }
                    else
                    {
                        <MudTimelineItem   Variant="Variant.Outlined">
                            <MudAlert Severity="Severity.Success">@matrix.UserName</MudAlert>
                        </MudTimelineItem>
                    }

唯一改变的是颜色和大小参数,其余部分保持不变,除了使用 if-else 语句之外,是否可以使用三元运算符或任何其他 blazor 支持的运算符将其仅写在一行中?

【问题讨论】:

    标签: c# blazor


    【解决方案1】:

    如果属性的值为 nullfalse (docs),则 Blazor 不应呈现该属性。尝试类似的东西:

    <MudTimelineItem Color="@(i == 1 ? Color.Primary : null)" Size="@(i == 1 ? Size.Medium : null)" Variant="Variant.Outlined">
        <MudAlert Severity="Severity.Success">@matrix.UserName</MudAlert>
    </MudTimelineItem>
    

    【讨论】:

      猜你喜欢
      • 2021-07-09
      • 1970-01-01
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 1970-01-01
      • 2017-05-30
      • 2019-04-09
      • 2016-05-22
      相关资源
      最近更新 更多