在生产环境中调用Blazor Server中的JS函数会导致重新连接



我想在Blazor服务器的一个新选项卡中打开一个链接,并且正在使用js-interop:

await JsRuntime.InvokeVoidAsync("open", url, "blank");

这在我的本地机器上运行,构建使用dotnet watch运行,但当我将其部署到服务器时,我会得到一个";正在尝试重新连接"几秒钟后JS就不运行了。

有人知道发生了什么事吗?我该怎么解决这个问题?谢谢

EDIT1:一些额外的上下文-这段代码是由ChartJS的OnClick回调为折线图调用的,这可能意味着JS在另一端。我还发现使用NavigationManager。该方法回调中的NavigateTo也会导致同样的问题。

您的第三个参数中缺少下划线

await JsRuntime.InvokeVoidAsync("open", url, "_blank"); 

它是_blank而不是blank。您的浏览器正在尝试查找blank帧,但找不到它并重新加载整个页面。

相关内容

  • 没有找到相关文章

最新更新