SuperAPI AI 工具集

dotnet-blazor-patterns

通用与其它

查看项目

更新于 10-16 02:27

技能介绍

用途:该技能用于构建 Blazor 应用,覆盖项目搭建、Blazor 托管模型选择、渲染模式配置、路由、增强导航、流式渲染、预渲染以及 AOT 安全模式,并对五种托管模型的取舍做分析。

主要能力与要点:

  • 托管模型与渲染模式:Static SSR、InteractiveServer、InteractiveWebAssembly、InteractiveAuto、Blazor Hybrid,可在全局、页面级、组件级设置,并说明各模式首屏加载、服务器资源、离线、API 访问、可扩展性与 SEO 的差异。
  • 项目搭建:使用 dotnet new blazor 模板,可加 --interactivity Auto、WebAssembly、Server 或 None。WASM 相关组件应放在 .Client 项目,服务器项目中的组件只在服务器运行。
  • 路由:@page 与路由参数、约束如 {Id:int}、{Date:datetime}、{Query:minlength(3)},查询字符串用 [SupplyParameterFromQuery],导航用 NavigationManager.NavigateTo。
  • 增强导航与流式渲染:增强导航只更新变化的 DOM,可用 data-enhance-nav="false" 或 data-enhance="false" 退出;流式渲染使用 @attribute [StreamRendering]。
  • AOT 安全:使用源生成 JSON 序列化(JsonSerializerContext),避免反射式序列化和动态类型加载;JS 互操作用显式方法名或 IJSObjectReference。
  • 预渲染与状态保持:默认交互组件会预渲染,可用 InteractiveServerRenderMode(prerender: false) 关闭;用 PersistentComponentState 保留预渲染状态,避免数据丢失与闪烁。
  • .NET 10 稳定特性:WebAssembly 预加载、增强表单验证、MapBlazorDiagnostics 诊断端点。

限制与边界:组件架构(生命周期、状态管理、JS 互操作、EditForm)由 dotnet-blazor-components 负责;认证由 dotnet-blazor-auth 负责;bUnit 测试、独立 SignalR、E2E 测试、框架选择、无障碍模式分别由其他技能负责,均不在本技能范围。资料未提供收费、价格等信息。