将箭头函数中的参数传递给控件
Pass args in an arrow function to a control
我有一个子组件,其方法有一个参数。我可以使用整数作为参数或参数来调用该方法。但不能直接作为引号内的字符串值。
下面是我的有效代码...
<SampleAlertButton @ref=alertSystem></SampleAlertButton>
<button class="btn btn-success" @onclick="() => alertSystem.AlertSuccess(message)">Show Successful Alert 2.0</button>
@code{
private SampleAlertButton alertSystem;
private string message="Success Message from Code!";
}
以下是我希望能够执行的操作,但无法执行,我收到一条错误消息,提示缺少右括号。
<SampleAlertButton @ref=alertSystem></SampleAlertButton>
<button class="btn btn-success" @onclick="() => alertSystem.AlertSuccess("My Inline Message")">Show Successful Alert 2.0</button>
@code{
private SampleAlertButton alertSystem;
}
为什么最后一个不起作用,我该如何解决?
使用此语法解决您面临的问题
<button class="btn btn-success" @onclick=@(() => alertSystem.AlertSuccess("My Inline Message"))>Show Successful Alert 2.0</button>
您需要 @
符号来切换到 C# 和 lambda 表达式周围的一组括号:
"@(() => alertSystem.AlertSuccess("My Inline Message"))"
试试这个:
我有一个子组件,其方法有一个参数。我可以使用整数作为参数或参数来调用该方法。但不能直接作为引号内的字符串值。
下面是我的有效代码...
<SampleAlertButton @ref=alertSystem></SampleAlertButton>
<button class="btn btn-success" @onclick="() => alertSystem.AlertSuccess(message)">Show Successful Alert 2.0</button>
@code{
private SampleAlertButton alertSystem;
private string message="Success Message from Code!";
}
以下是我希望能够执行的操作,但无法执行,我收到一条错误消息,提示缺少右括号。
<SampleAlertButton @ref=alertSystem></SampleAlertButton>
<button class="btn btn-success" @onclick="() => alertSystem.AlertSuccess("My Inline Message")">Show Successful Alert 2.0</button>
@code{
private SampleAlertButton alertSystem;
}
为什么最后一个不起作用,我该如何解决?
使用此语法解决您面临的问题
<button class="btn btn-success" @onclick=@(() => alertSystem.AlertSuccess("My Inline Message"))>Show Successful Alert 2.0</button>
您需要 @
符号来切换到 C# 和 lambda 表达式周围的一组括号:
"@(() => alertSystem.AlertSuccess("My Inline Message"))"
试试这个: