mcpField
T
twig-components

twig-components

github.com/dev-toolings开发22775 次安装3 周前更新
代码仓库

关于 twig-components

面向 Symfony 的 Twig 组件开发 Skill,涵盖匿名、类组件和响应式 Live Components,并介绍属性、插槽、状态及组件测试。

主要功能

  1. 01匿名与类组件
  2. 02属性和插槽模式
  3. 03组件计算逻辑
  4. 04响应式 Live Components
  5. 05组件类测试

适用场景

  1. 01提取重复的 Twig 标记
  2. 02构建带属性和插槽的组件
  3. 03添加响应式搜索、计数器或表单
  4. 04测试组件挂载与渲染

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dev-toolings/superpowers-symfony --skill twig-components

安装后在 Claude Code 中输入/twig-components确认已加载。

附带文件reference.md

详细介绍

Twig 组件(Symfony)

适用场景

  • 将重复的 Twig 片段提取为可复用组件。
  • 构建具有属性、插槽、计算逻辑或 CVA 变体的组件。
  • 使用 Live Components 让组件具有响应性(搜索、计数器、表单)。

默认工作流

  1. 选择组件类型:匿名(仅模板)、基于类的 #[AsTwigComponent] 或 #[AsLiveComponent]。
  2. 将属性声明为可公开访问且可变的属性;使用 mount() 设置派生值。
  3. 通过块(插槽)注入内容,而不是添加更多属性。
  4. 对于 Live Components,使用 #[LiveProp(writable: true)] 标记可写状态,并对用户输入进行防抖处理。
  5. 使用 InteractsWithTwigComponents 测试 PHP 类。

防护措施

  • 切勿将公开属性设为 readonly:实例化后还会为其赋值。
  • 将服务注入为 private readonly,切勿将其作为公开属性。
  • 仅在浏览器必须修改某个 LiveProp 时,才将其标记为可写。
  • 每个组件只承担一项职责。

渐进式披露

  • 使用此文件了解执行方式和风险控制。
  • 需要深入的实现细节时,打开参考资料。

输出约定

  • 组件类和模板,以及其属性和插槽。
  • 响应式组件的实时状态和操作。
  • 用于测试挂载和渲染的组件测试。

参考资料

  • reference.md

评论

支持 Markdown