.NET MAUI Blazor Hybrid中NavigationManager.NavigateTo无法正常工作
Blazor页面跳转失败的解决方案
你的代码里有两个关键问题导致跳转失效:
错误调用了不存在的方法
NavigationManager类并没有NavigateToPage这个方法,正确的页面跳转方法是NavigateTo。异步事件处理方法返回值错误
Blazor中,异步的点击事件处理方法应该返回Task而不是void,使用async void可能会导致无法捕获异常,甚至影响组件生命周期。
修正后的首页代码如下:
@page "/" @using System.Diagnostics; @inject NavigationManager Navigation; <button type="button" class="btn btn-primary" @onclick="NavigateToPage">GoTo Foopage</button> @code { private async Task NavigateToPage() { Navigation.NavigateTo("/foopage", true); Debug.WriteLine($"NavigateTo Foopage clicked"); } }
你的/foopage页面代码没有问题,保持原样即可。修改后点击按钮就能正常跳转到Foo页面了。
内容的提问来源于stack exchange,提问作者MIB
相关产品推荐
相关产品推荐

