Dot-Net-Core
同一頁面中的 Blazor 路由更改
我目前的設置:
- .NET 核心 3(預覽版 6)
- Blazor 伺服器端渲染
在 Blazor 頁面中,我有以下內容:
@page "/page" @page "/page/{Id}"和:
[Parameter] public string Id { get; set; }現在,例如,當從 導航
/page/1到時/page/2,我可以使用它OnParametersSetAsync來檢測這些變化。但是從 導航/page/1到時會出現問題/page。OnParametersSetAsync可以檢測到這種變化,但是該Id參數將保持1與之前的路由相同。我想知道在這種情況下我能做些什麼。
Blazor 不會用 null 覆蓋空參數,請自行執行:
@page "/Counter" @page "/Counter/{Id}" <h1>Current Id: @IdString;</h1> <a href="/Counter"> go home </a> | <a href="/Counter/1"> go home 1 </a> | <a href="/Counter/2"> go home 2 </a> @code { private string IdString; [Parameter] public string Id { get; set; } protected override async Task OnParametersSetAsync() { // copy par value somewhere IdString = Id?.ToString() ?? ""; // rest parm (set to null) by yourself Id=null; } }
