我在这个项目中使用.NET 8 Blazor. 我有两页剃刀.

家.剃刀被翻译成战略科学军团. 它实现了纯JS导航,因为它不能使用C#.当点击按钮时,它会将用户重定向到"/booking".

$('#booking-btn').on('click', function () {
    window.location.href = '/booking';
});

Booking.razor,它将呈现为Interactive Server.它实现了C#导航.当点击按钮时,NavigationManager会将用户重定向到"/".

@inject NavigationManager NavigationManager

private void ReturnToHome()
{
    NavigationManager.NavigateTo("/");
}

问题是,当用户第一次(在主页)加载网站并点击按钮时,它会起作用,并重定向到预订.然后,当他点击预订页面上的按钮时,每次都会起作用,并重定向到主页.但是当用户被重定向到主页时,主页按钮停止工作.

所以我假设我搞砸了渲染,JS不想正确加载.

推荐答案

只需在NavigationManager上使用forceLoad,就会再次加载SSR脚本.

    private void ReturnToHome()
    {    
        NavigationManager.NavigateTo("/", forceLoad: true);
    }

Csharp相关问答推荐

访问C#中的数据库字段时获取数据是收件箱错误-为什么?&有效,如果声明不有效

有没有一种方法可以防止在编译时在MicrosoftC或非单线程上下文中调用方法?

一种安全的方式来存储SSH凭证(MAUI/C#应用程序)

使用命令初始化可绑定属性

如何删除文件的基础上嵌入的时间戳嵌入文件名

MAUI查询参数单一字符串项将不起作用

Azure Redis缓存与Entra ID身份验证

Rider将.NET安装在哪里

获取具有AutoFaces的所有IOptions对象的集合

如何通过寻找向量长度来优化两个循环?

如何让NLog停止写入冗余信息?

该函数不能检测两条曲线的交点

Regex字母数字校验

在';、';附近有错误的语法.必须声明标量变量";@Checkin";.';

C#命名管道-编码错误?

C#使用相同内存的多个数组

Xamarin中出错.表单:应用程序的分部声明不能指定不同的基类

游戏对象走向不同的方向

最小API定义的Swagger标头参数

使用ITfoxtec.Identity.Saml2解析相同键多值SAML 2声明