我正在使用带有 Razor 页面的新 ASP.NET Core 3.1 应用程序,我想在其中使用第三方 Blazor 组件,但我无法让它工作。我遵循了许多网站上关于如何使用 Razor 页面在基于 MVC 的应用程序中启用 Blazor 组件的说明(更改 startup.cs 中的 Configure 和 ConfigureServices 方法,添加端点,包括 Blazor 的 .js 等)。
如果我自己编写一个组件并使用它,它似乎工作得很好。但我尝试使用 Syncfusion 的 Blazor 库,但它只是拒绝工作。我在 Razor 页面中尝试过类似的东西
@(await Html.RenderComponentAsync<Syncfusion.EJ2.Blazor.Calendars.EjsDateTimePicker>(RenderMode.ServerPrerendered))
这适用于我手动创建的 Blazor 组件,但不适用于第三方 EjsDateTimePicker 组件。我还确保包含所需的 @using 引用,并且 VS 会找到所有内容,以及在我的布局文件中包含 JS 引用。
我还尝试将第三方组件包含到我手动创建的组件中,因为 Blazor 允许这样做并且 VS 识别组件/标签但仍然拒绝呈现它。在这种情况下,当我调用自己的组件时
<CustomRazorTest>@(await Html.RenderComponentAsync<TestProj.Components.Pages.CustomRazorTest>(RenderMode.ServerPrerendered))</CustomRazorTest>
它加载除第三方组件之外的所有内容。我还尝试了不同的渲染方法,以防万一可能修复它。但似乎没有任何效果。