lev*_*s84 4 razor asp.net-core blazor blazor-server-side
如果 IsActive bool 为真,我有一个跨度应该有一个 onclick 属性。否则跨度应该没有 onclick 属性。
例如
@if (IsActive == true)
{
<span @onclick="@(e => Go.DoSomething("please"))">
@s.DisplayText
</span>
}
else
{
<span>
@s.DisplayText
</span>
}
Run Code Online (Sandbox Code Playgroud)
有没有办法避免使用三元运算符的重复代码?例如
@(IsActive == true ? "add onclick method somehow?" : "")
Run Code Online (Sandbox Code Playgroud)
Uma*_*air 10
添加条件的更好方法IsActive == true是在Go.DoSomething方法中。但理想情况下,我会使用可点击disabled的按钮,因为我们可以向按钮添加属性,在您的情况下,您可以在onclick方法中添加条件。
只是按钮的提示,您可以在该属性中添加您的 c# 布尔属性,如下所示:
<button disabled="@IsActive">Save</button>
Run Code Online (Sandbox Code Playgroud)
您可以执行以下操作。
<span @onclick="@(e => { if (IsActive) Go.DoSomething("please");})">
@s
</span>
Run Code Online (Sandbox Code Playgroud)
一个Lambda表达式是什么,我认为你真正需要的。
| 归档时间: |
|
| 查看次数: |
2829 次 |
| 最近记录: |