能否将`class`用作Blazor组件的参数名?
Blazor组件使用
class作为参数名的解决方案 因为class是C#的保留关键字,直接定义参数会报错,但可以用C#的关键字转义语法(在关键字前加@)来解决这个问题,具体实现如下:
组件代码修改
<div class="@class"> <!-- 组件内部内容 --> </div> @code { [Parameter] public string? @class { get; set; } }
组件调用方式
依然可以保持你想要的写法,完全不需要改动:
<MyComponent class="my-css-class" />
Blazor会自动将模板中的class参数映射到代码块里的@class属性,既满足了用class作为参数名的需求,又避开了C#保留关键字的限制。
内容的提问来源于stack exchange,提问作者Daniel Jonsson
相关产品推荐
相关产品推荐

