我正在尝试在 .net core 3 MVC 项目中使用 Blazor。我使用了一些教程来做到这一点,比如https://fizzylogic.nl/2019/08/18/integrating-blazor-in-an-existing-asp-net-core-application/和https://chrissinty.com /using-blazor-components-in-an-existing-mvc-application/。
工作原理:Blazor 组件的初始化工作正常。OnInitializedAsync() 函数被触发,组件渲染得很好。
这是来自 MVC 视图的调用:
@(await Html.RenderComponentAsync<MyProject.Components.Locations>(RenderMode.ServerPrerendered))
Run Code Online (Sandbox Code Playgroud)
什么不起作用:在 Blazor 组件中使用 @onclick。这是一些示例代码:
<span @onclick="AddLocation"></span>
@code {
private void AddLocation(){
}
}
Run Code Online (Sandbox Code Playgroud)
它可能不起作用的原因是我在连接初始化时出错。组件不是从基本路径渲染的,而是从特定视图的 url 渲染的,我认为这会影响连接。我在 Chrome 的控制台中收到这些错误:
主要的错误可能是'将'_blazor '标准化为' https://localhost:44375/Locations/_blazor ' '。从基本路径请求 _blazor 有效。有谁知道在这种情况下如何设置基本路径?
(是的,普通 Razor 页面环境中的 …