首页 > 解决方案 > Blazor Server NavManager NavigateTo cshtml

问题描述

我刚刚开始使用 Blazor(服务器端)在我的第一个站点上。

在正常情况下,我的网站可以正常导航。在 Blazor (.razor) 页面之间导航时,我使用按钮单击事件来调用注入的 NavManager.NavigateTo。例如 _NavManager.NavigateTo("/mypage"); - 导航还可以

当我尝试导航到默认登录页面 (cshtml)

_NavManager.NavigateTo("Identity/Account/Login"); 

或 _NavManager.NavigateTo("/Identity/Account/Login");

我收到一条消息“对不起,这个地址没有任何东西。” . 浏览器地址栏填写正确。如果我在地址栏上按 Enter 键,则会加载正确的页面。

使用 <a 超链接导航确定。

为了解决这个问题,我尝试了

_NavManager.NavigateTo("Identity/Account/Login",true);

这可以正常工作并打开页面。不幸的是,如果我然后点击后退按钮,它会加载我的原始页面,但在页面底部我得到

'发生了错误。在重新加载之前,此应用程序可能不再响应。重新加载'

当我调查我得到的页面时

blazor.server.js:19 [2021-03-03T14:01:43.181Z] 错误:组件记录列表无效。e.log @ blazor.server.js:19 blazor.server.js:1 Uncaught (in promise) 错误:由于底层连接被关闭,调用被取消。

at e.connectionClosed (blazor.server.js:1)
at e.connection.onclose (blazor.server.js:1)
at e.stopConnection (blazor.server.js:1)
at e.transport.onclose (blazor.server.js:1)
at e.close (blazor.server.js:1)
at e.stop (blazor.server.js:1)
at e.<anonymous> (blazor.server.js:1)
at blazor.server.js:1
at Object.next (blazor.server.js:1)
at a (blazor.server.js:1)

我只是想知道是否有人能指出我正确的方向

有趣的是,如果我点击刷新,一切正常,所以我猜测它(就像它所暗示的那样)与客户端断开连接有关?

谢谢

标签: razornavigationblazor-server-side

解决方案


推荐阅读