SuperAPI AI 工具集

twig-components

通用与其它

查看项目

更新于 10-15 21:08

技能介绍

用途:当需要把重复的 Twig 片段抽取为可复用组件,或构建带 props、slots、计算逻辑、CVA 变体的组件,以及让组件具备响应式交互(搜索、计数器、表单)时使用。

主要能力:支持三种组件类型——匿名组件(仅模板)、基于类的 #[AsTwigComponent]、以及 #[AsLiveComponent]。props 以 public 可变属性声明,派生值用 mount() 计算;内容注入通过 blocks(slots)而非增加 props。Live Components 用 #[LiveProp(writable: true)] 标记可写状态,并对用户输入做防抖。

使用方式:先选择组件类型;声明 props 与 mount();用 slots 暴露内容注入;响应式组件标记可写 LiveProp 并防抖;用 InteractsWithTwigComponents 测试 PHP 类。输出为组件类与模板(含 props 和 slots)、响应式时的 Live 状态与动作,以及针对 mount 和渲染的组件测试。

限制与注意:public props 不能设为 readonly,因为它们在实例化后才赋值;服务应注入为 private readonly,不能作为 public props;只有浏览器必须修改的状态才标记 LiveProp 可写;每个组件保持单一职责。深入实现细节需查阅 reference.md。