You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor中如何用三元运算符将if-else语句简化为单行代码?

简化Blazor重复组件代码的方案

可以直接在组件属性中使用三元运算符简化代码,利用MudBlazor组件对null属性的处理逻辑(属性为null时会使用组件默认值,效果等同于不声明该属性),将两段代码合并为如下形式:

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

说明

  • 当i == 1时,Color设为Color.Primary、Size设为Size.Medium,和原if分支效果完全一致;
  • 当i != 1时,Color和Size赋值为null,MudBlazor会自动使用组件默认值,等价于原else分支中不声明这两个属性的效果;
  • 这种写法既保留原有逻辑,又消除了重复代码,完全符合Blazor语法规范。

内容的提问来源于stack exchange,提问作者Venkat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 04:25:19