blazor - 在 Blazor 中绑定完成后如何运行其他操作?
问题描述
我试图弄清楚绑定完成后如何运行一个动作
例如
<input type="text" @bind="@Model.Value" />
<h2>@Value2</h2>
@code
{
void SetNewValue()
{
Value2 = $"New value {this.Model.Value} added on {DateTime.Now}";
}
string Value2 {get;set;}
}
这只是一个简单的例子。我不能使用 onchange,因为它不能与 bind 一起使用。我尝试使用 onkeyup 但在绑定完成之前执行。Blazor 没有处理焦点丢失的选项,所以我真的不知道如何完成这项工作。
解决方案
@page "/"
<input type="text" value="@model.Value" @onchange="@((args) => { model.Value =
args.Value.ToString(); SetNewValue(); })" />
<h2>@Value2</h2>
@code
{
private Model model = new Model();
void SetNewValue()
{
Value2 = $"New value {this.model.Value} added on {DateTime.Now}";
}
string Value2 { get; set; }
public class Model
{
public string Value { get; set; }
}
}