SuperAPI AI 工具集

reactor-app

前端与建站

查看项目

更新于 10-16 14:09

技能介绍

用途

Reactor 是一个受 React 启发的 WinUI 3 函数式投影框架,用于创建 WinUI 3 桌面应用。开发者编写返回轻量元素描述的函数,协调器对比新旧元素树并更新真实的 WinUI 控件,状态变化会自动触发重新渲染。按资料说明,它不涉及 XAML、数据绑定和 ViewModel。

本条目对应的是一份技能文档(SKILL.md),用于指导代理在 Reactor 环境下工作。资料明确说明:这是遗留的单文件技能,若具备插件 SDK,应安装或加载 plugins/reactor/ 下的 reactor 插件(NuGet 包中位于 agentkit/plugins/reactor/),该插件把内容拆分为更聚焦的单技能文件,加载成本显著低于本单文件版本。

主要能力

  • 声明式 C# 组件:支持类组件(继承 Component,实现 Render)、内联函数组件、Memo 记忆化组件,以及通过 record 定义强类型 props。
  • Hooks:文档列出 UseState 等钩子,并另有专门子技能覆盖异步数据(UseResource、UseMutation、UseInfiniteResource、Pending)、命令(Command、StandardCommand、UseCommand、CommandHost)、导航(UseNavigation、NavigationHost、NavigationView、TabView)、表单校验(UseValidationContext、FormField、MaskEngine、InputFormatter)、输入手势与焦点(OnPan、OnPinch、OnRotate、OnDragStarting、UseElementFocus)等。
  • 原生与第三方控件包装:通过 [GenerateReactorWrapper] 源生成器,为 Reactor 没有内置工厂的控件自动生成元素、描述符、注册和同名工厂。
  • 图表与数据可视化:charts 子技能覆盖图表类型选择(含 donut、TreeChart、ForceGraph)、图表 DSL 以及 LabelView / XTickLabelView / YTickLabelView 扩展点。
  • 配套工具:mur CLI 提供 ---skill、---api、---regen-api 以及 mur check(本质是 dotnet build,附技能指针与“→ try:”建议)等命令。
  • 子技能与配方:包含 async、design、commanding、navigation、forms、input、charts、dsl-reference、devtools 等文档,以及 recipes 目录下可直接粘贴的单文件示例(如 list-add-delete、sidebar-nav、form-with-validation、async-fetch-list、themed-card、canvas-positioning、named-styles、calendar-multiselect)。

使用方式

资料区分两种模式:Selfhost(在 Reactor 源码克隆内,src/Reactor/Reactor.csproj 存在)与 Consumer(项目依赖 Microsoft.UI.Reactor)。Selfhost 需先构建 Reactor.Cli,再运行 mur pack-local 生成本地包;克隆外的消费者项目需在项目旁放置 nuget.config 指向克隆的 local-nupkgs 绝对路径。此外可通过 dotnet new reactor 模板创建项目,模板包含 reactor-mvu、reactor-navview、reactor-tabview 等短名称。文档还给出 .csproj 配置、必需的 using 指令集合,以及 ReactorApp.Run 的组件根与内联渲染两种入口写法。

适用场景

适合以 C# 声明式方式构建 WinUI 3 桌面应用、需要组件化与状态驱动重渲染、需要包装自定义或第三方控件、需要数据可视化,以及希望借助代理技能文档与 mur check 快速迭代构建错误的开发场景。

限制

  • 本条目资料为技能说明文档,未提供定价、收费、性能指标或效果承诺等信息。
  • 单文件 .cs 构建不会加载分析器,需使用 .csproj 才能获得分析器覆盖。
  • 文档推荐的插件加载路径在部分环境中不可用,此时才使用本遗留单文件技能。
  • 资料未说明支持的操作系统版本范围、许可条款与版本支持策略,暂未提供。