MVC中的Blazor:呈现了组件,但是@onclick无法正常工作。连接问题

问题描述 投票:0回答:1

我正在尝试在.net核心3 MVC项目中使用Blazor。我使用了一些教程来做到这一点,例如https://fizzylogic.nl/2019/08/18/integrating-blazor-in-an-existing-asp-net-core-application/https://chrissainty.com/using-blazor-components-in-an-existing-mvc-application/

正在运行:Blazor组件的初始化正在运行。 []触发OnInitializedAsync()函数,并使组件呈现良好状态。

这是来自MVC视图的呼叫:

@(await Html.RenderComponentAsync<MyProject.Components.Locations>(RenderMode.ServerPrerendered))

不起作用:在Blazor组件中使用@onclick。这是一些示例代码:

<span @onclick="AddLocation"></span>

@code {
    private void AddLocation(){

    }
}

之所以可能不起作用,是因为在初始化连接时出现错误。该组件不是从基本路径中呈现的,而是从特定视图的URL中呈现的,我认为这使连接混乱。我在Chrome的控制台中收到以下错误:

  • [[2019-12-02T09:26:08.117Z]信息:将'_blazor'标准化为'https://localhost:44375/Locations/_blazor'。_blazor / negotiate:1无法加载资源:服务器的状态为404()blazor.server.js:1
  • [2019-12-02T09:26:08.155Z]错误:无法完成与服务器的协商:错误e.log @ blazor.server.js:1blazor.server.js:1
  • [2019-12-02T09:26:08.156Z]错误:无法启动连接:错误e.log @ blazor.server.js:1blazor.server.js:15
  • [2019-12-02T09:26:08.156Z]错误:错误e.log @ blazor.server.js:15blazor.server.js:1-未捕获(承诺)错误:如果连接未处于“已连接”状态,则无法发送数据。

主要故障可能是'将'_blazor'标准化为'https://localhost:44375/Locations/_blazor'''。从基本路径请求_blazor起作用。有谁知道在这种情况下如何设置基本路径?

[[(是的,在普通的Razor页面环境中使用Blazor可能更容易,但是我想在MVC中尝试Blazor。)]]

我正在尝试在.net核心3 MVC项目中使用Blazor。我使用了一些教程来做到这一点,例如https://fizzylogic.nl/2019/08/18/integrating-blazor-in-an-existing-asp-net-core-application/和https:// ...
c# asp.net-mvc blazor blazor-server-side
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.