我是SPA框架和Blazor的新手,所以尽管我在其他任何地方都找不到答案,但这可能是一个容易回答的问题。
我想在单击特定按钮后立即在页面上的某个位置显示组件。我目前已经以这种方式实现它:
@page "/test"
<button type="button" @onclick="() => showSignUpComponent = true">
Show Sign Up Window
</button>
@if (showSignUpComponent)
{
<SignUp />
}
@code {
bool showSignUpComponent;
}
我想知道在Blazor中是否有更好,更清洁的方法(即正确的方法)来做这样的事情,或者这是常见且标准的方法吗?
答案 0 :(得分:3)
您所做的一切很好,我敢说这是标准的做法!
如果您有不同的方案,也可以用略有不同的方式来执行此操作。例如,您可以定义一个字符串变量而不是布尔变量,并在其中存储一些相关信息,等等。
但是,无需赘述。您所做的一切都很好,这表明您确实了解到,触发UI事件(例如“ click”)时,将重新呈现组件,并且无需调用StateHasChanged ... < / p>