Blazor:在属性更改时调用Web API
我是布拉佐的新手。目前,当我试图从客户端blazor应用程序(Web assembly)调用Web API并使用UI中的复选框作为GET参数的过滤器时,我遇到了一个问题 例如: 我有一个复选框:Blazor:在属性更改时调用Web API,blazor,blazor-client-side,Blazor,Blazor Client Side,我是布拉佐的新手。目前,当我试图从客户端blazor应用程序(Web assembly)调用Web API并使用UI中的复选框作为GET参数的过滤器时,我遇到了一个问题 例如: 我有一个复选框: <input type="checkbox" class="form-check-input" id="chkOnlyActiveRecords" @bind="OnlyActiveRecords" @onclick="LoadDataFromServer" /> 和API调用: @c
<input type="checkbox" class="form-check-input" id="chkOnlyActiveRecords" @bind="OnlyActiveRecords" @onclick="LoadDataFromServer" />
和API调用:
@code {
public bool OnlyActiveRecords{ get; set; }
private async Task LoadDataFromServer()
{
data = await Http.GetJsonAsync<IList<Zeme>>($"Zeme?onlyActive={this.OnlyActiveRecords}");
}
}
@code{
公共bool only活动记录{get;set;}
专用异步任务LoadDataFromServer()
{
data=wait Http.GetJsonAsync($“Zeme?onlyActive={this.OnlyActiveRecords}”);
}
}
问题在于,仅属性的活动记录在OnClick时包含旧值
当我使用onchange事件时,如:
<input type="checkbox" class="form-check-input" id="chkOnlyActiveRecords" @bind="OnlyActiveRecords" @onchange="LoadDataFromServer" />
我收到错误消息:“属性'onchange'由'@bind'指令属性使用。”
当Blazor中的属性值发生变化时,有没有办法调用方法?我认为您的问题是@onchange是@bind功能的一半,所以您需要使用
@bind value=“OnlyActiveRecords”@onchange=“LoadDataFromServer”
将更改事件与设置值分开。我认为您的问题在于@onchange是@bind功能的一半,因此您需要使用
@bind value=“OnlyActiveRecords”@onchange=“LoadDataFromServer”
将更改事件与设置值分开