gpt4 book ai didi

validation - 从 Blazor 中的异步功能禁用按钮

转载 作者:行者123 更新时间:2023-12-02 16:52:18 24 4
gpt4 key购买 nike

我的页面上有以下 EditForm 模型:

<EditForm Model="@projectParameters" OnValidSubmit="@SubmitProject">
<MatButton Raised="true" Type="submit" Disabled="@saveButtonDisabled">@saveButtonName</MatButton>
</EditForm>

然后是下面的函数:

private async Task SubmitProject()
{
DisableSave();

if (pageType == "Create")
{
await CreateProject();
}
else if (pageType == "Create")
{
await EditProject();
}
}

void DisableSave()
{
saveButtonDisabled = true;
saveButtonName = "Saving...";
StateHasChanged();
}

SubmitProject 和 DisableSave 被正确调用,但 saveButtonName 和 disabled 在 CreateProject 工作时从未实际显示为已完成。我错过了什么?

最佳答案

使用 await Task.Delay(1); 刷新更改:

private async Task SubmitProject()
{
await DisableSave();
...

然后

async Task DisableSave()
{
saveButtonDisabled = true;
saveButtonName = "Saving...";
await Task.Delay(1); //flush changes
StateHasChanged(); // not needed
}

关于validation - 从 Blazor 中的异步功能禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58016204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com