使用StateHasChanged方法强制刷新UI
使用Blazor时,有时候会出现数据已经更新但UI没有刷新的情况,这是因为Blazor只会在数据绑定发生变化时自动刷新UI。如果希望强制刷新UI,可以使用组件上的StateHasChanged方法。
代码示例:
@page "/counter"
Current count: @currentCount
@code {
private int currentCount = 0;
private void IncrementCount()
{
currentCount++;
StateHasChanged(); // 强制刷新UI
}
}
在上面的示例中,当点击按钮时,计数器的值会增加,同时也会调用StateHasChanged方法来强制刷新UI。这样即使数据已经更新但UI没有刷新,也能保证UI能够及时更新。