Blazor-预呈现你了解吗?

预呈现作用

Blazor 的预呈现(Prerendering) 是一个核心特性,主要用于提升 Blazor WebAssembly (WASM) 应用的初始加载体验和搜索引擎优化(SEO)。它在应用启动过程中扮演着关键角色。
Blazor 的预呈现是一种巧妙的技术,它通过在服务器端预先渲染 Blazor WebAssembly 应用的初始 UI 并直接发送给浏览器,显著提升了用户首次加载的体验(消除白屏),并大大改善了应用的搜索引擎友好性(SEO)。同时,它通过状态序列化和 DOM 关联技术,实现了从静态 HTML 到完全交互式 SPA 的平滑过渡。这是构建用户友好且易于发现的 Blazor WASM 应用的关键特性。

禁用预呈现功能

@rendermode @(new InteractiveAutoRenderMode(prerender:false))

支持预呈现

  • (1) None:静态 SSR 呈现,不具有交互性,不支持预呈现。
  • (2) Server:交互式 SSR 呈现,具有交互性,支持预呈现。
  • (3) WebAssembly:交互式 CSR 呈现,具有交互性,支持预呈现。
  • (4) Auto:先 Server,后WebAssembly,具有交互性,支持预呈现。

Server 呈现模式预呈现

对于自动模式创建的 Blazor WebApp 项目,在*.Client 项目中,也可以将组件设置为 Server 呈现模式,这样该组件会全部在服务器上运行。
设置 Server 呈现模式,并启用预呈现:

@rendermode @(new InteractiveServerRenderMode(prerender:true))

WebAssembly 呈现模式预呈现

在这种模式下,组件需要下载到浏览器的WebAssembly 中运行。
但是,若 WebAssembly 模式下还启用了预呈现模式,则每次运行都是预呈现在服务器端运行,重新呈现在 WebAssembly 下运行。
使用如下代码设置 WebAssembly 呈现模式,并启用预呈现:

@rendermode @(new InteractiveWebAssemblyRenderMode(prerender:true))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code-Study

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值