如何在 Blazor 的 RenderMode.Auto 中正确分发文件?

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

我正在处理 Blazor 项目,并为我的组件使用

RenderMode.Auto
。据我了解,此模式最初在服务器端渲染组件,然后在下载 WebAssembly 文件后切换到客户端渲染。但是,我不清楚主页面和客户端页面/组件的分离, 即使在 Visual Studio 的演示项目中,客户端项目也有
Counter.razor
页面,而
Weather.razor
位于主项目中。我不明白为什么两个项目之间的组件是分离的,而我们可以简单地更改每个页面/组件的渲染模式

blazor blazor-rendermode blazor-auto
1个回答
0
投票

我假设您选择的模板是 RenderModeAuto,交互性设置为 Per Page/Component

Server项目引用了Client项目,因此它可以看到Client项目中的所有razor组件。服务器中的注释

Program

app.MapRazorComponents<App>()
    .AddInteractiveServerRenderMode()
    .AddInteractiveWebAssemblyRenderMode()
    .AddAdditionalAssemblies(typeof(SO78467379.Client._Imports).Assembly);

反之则不然。 WASM 项目只能看到其本身的组件及其引用的库。

因此任何应该由 WASM 渲染的页面/组件都需要位于客户端项目或其可以引用的库中。

© www.soinside.com 2019 - 2024. All rights reserved.