我有一个ProjectBase.razor页面,用于创建,查看和编辑项目。以下路线均带您进入此页面:

/project/view/{projNum}
/project/create/
/project/edit/{projNum}


我的导航菜单中还有一个Navlink,可让您创建一个新项目:

<NavLink class="nav-link" href="/Project/Create" Match="NavLinkMatch.All" >
    <span aria-hidden="true">New Project</span>
</NavLink>


如果在同一页面的查看/编辑功能上单击该链接,则URL更改为“ / Project / Create”,但页面本身不会刷新或重新加载。有没有办法通过NavLink强制这样做?还是我需要添加一个OnClick函数来做到这一点?

最佳答案

是的,使用Microsoft.AspNetCore.Components.NavigationManager之类的东西并将其的NavigateTo函数(将forceLoad设置为true)将完成您要查找的内容。

当然可以,这将需要您设置onclick函数,但这是我最终为网站范围内的搜索页面完成类似操作的方法,该页面在技术上从未在我传递的查询字符串搜索值之外进行过URL更改它。

话虽这么说,也许只有NavLinks才能做到这一点。当我不在手机上时,我会更新我的答案。

10-08 08:34