React Composition Patterns 是一套关于 React 组件组合模式的实践指南,目标是帮助开发者构建灵活、可维护的 React 组件。其核心理念是避免通过不断增加布尔属性(boolean props)来定制组件行为,转而使用组合(composition)的方式,使代码库在规模增长时依然易于人类和 AI 智能体理解和维护。
用途
该指南主要用于以下场景:
- 重构带有大量布尔属性的组件;
- 构建可复用的组件库;
- 设计灵活的组件 API;
- 审查组件架构;
- 使用复合组件(compound components)或 Context Provider。
主要能力
指南将规则按优先级分为三个类别,每个类别包含若干具体规则:
1. 组件架构(高优先级,前缀 architecture-)
- architecture-avoid-boolean-props:不要通过添加布尔属性来定制行为,而应使用组合。
- architecture-compound-components:使用共享上下文(context)来组织复杂组件。
2. 状态管理(中优先级,前缀 state-)
- state-decouple-implementation:Provider 是唯一知道状态如何管理的地方。
- state-context-interface:定义包含 state、actions、meta 的通用接口,以便依赖注入。
- state-lift-state:将状态提升到 Provider 组件中,以便兄弟组件访问。
3. 实现模式(中优先级,前缀 patterns-)
- patterns-explicit-variants:创建显式的变体组件,而不是使用布尔模式。
- patterns-children-over-render-props:使用 children 进行组合,而不是 renderX 属性。
使用方式
每条规则都有独立的文件,包含详细说明和代码示例。例如:
rules/architecture-avoid-boolean-props.mdrules/state-context-interface.md
每个规则文件通常包含:
- 为什么该规则重要的简要说明;
- 带有解释的错误代码示例;
- 带有解释的正确代码示例;
- 额外的上下文和参考。
如需查看所有规则展开的完整指南,可参考 AGENTS.md。
适用场景
该指南适用于任何使用 React 进行组件开发的场景,尤其适合需要长期维护、多人协作或与 AI 智能体协同工作的项目。通过遵循这些模式,可以显著减少组件 API 的复杂度,提高代码的可读性和可扩展性。
限制
资料中未提供关于该指南的安装命令、具体代码内容、收费模式、平台支持或效果保证等信息。用户需自行访问相关文件获取详细规则和示例。