SuperAPI AI 工具集

javascript-react-patterns

编程与开发

查看项目

更新于 10-16 04:15

技能介绍

用途

该技能用于在架构设计、重构或代码评审出现 JavaScript 与 React 模式相关问题时,帮助选择与评估设计、组合、渲染和性能模式。其核心立场是:模式是描述性选项,而非强制架构;只有在识别出具体问题后才选择模式。

主要能力

  • 以证据选择模式:检查仓库的框架与包版本、本地约定、已接受的决策,以及受影响接缝处的代码,说明观察到的压力来源,例如耦合、归属、复用、加载、渲染、数据流或可测量的性能。
  • 阅读模式目录,列出最小可行候选集,并包含直接不使用模式的替代方案。
  • 仅阅读当前候选相关的参考卡片,不加载无关卡片。
  • 对比接口成本、隐藏复杂度、运行时成本、可测试性、迁移成本以及与现有技术栈的契合度;对时间敏感的 API 需对照已安装版本及其官方文档核实。
  • 仅当模式收益在当前问题中可观察时才应用或推荐;若模式只是重命名或重新分配复杂度,则保留更简单的代码。
  • 在最窄且忠实的接缝处验证:结构性变更使用行为测试,性能主张使用 profiler、bundle、网络或 Web Vitals 证据。
  • 完成标准:结果需说明问题与证据、直接替代方案、所选参考、适用权衡与版本约束、已授权的操作及其验证。

使用方式

该技能提供专家判断,不改变 pursue-goal 权限或生命周期路由。协调者可将有边界的 JavaScript 或 React 模式问题路由至此;只有协调者更新目标图、已接受决策与路由状态。架构设计者可将目录与卡片作为比较难以逆转的替代方案时的证据,但本技能不能接受决策。实现者可在已接受的切片内选择可逆的内部模式,并实现最小一致行为。清理者可在已接受边界内修复误用的模式、遗留 React 构造或不受支持的性能主张。验证者可使用相关卡片判断不可变候选,但不能仅因使用了不同模式而判定失败,只要该模式以同等或更低复杂度满足已接受契约。产品验证者判断可观察旅程,通常不需要这些代码级参考。当选择会改变用户可见行为、公共契约、敏感策略或难以逆转的架构时,应将证据与替代方案返回协调者,而非本地决定。

适用场景

适用于 JavaScript 与 React 项目的架构设计、重构和代码评审,尤其是需要在多个模式之间权衡、或需要判断是否引入某个模式时。也适用于判断遗留类组件迁移、性能优化主张是否成立等场景。

现代 React 基线

新 React 组件应写为函数组件,使用 Hooks 与自定义 Hooks 处理有状态或可复用行为。不要引入类组件;现有类组件视为遗留,仅在已接受范围要求或所需行为无法安全交付时才迁移。新代码优先使用组合与 Hooks,而非 HOC、render props、mixins 或容器包装;这些模式仅在有明确接口或遗留互操作需求时使用。错误边界使用框架提供的边界或项目批准的函数式面向库;除非项目配置明确授权例外,不要添加原始类边界。避免投机性 memoization 和由 effect 驱动的派生状态;渲染优化需要 profiler 证据,并在添加客户端缓存层之前先使用所选框架提供的数据设施。

限制

参考卡片是改编自 Patterns.dev 的决策辅助,并非冻结的 API 手册;每张卡片只包含模式特定的选择指导,所有模式共享的规则位于本技能中,不得在卡片中重复。该技能不改变目标权限与生命周期路由,不能接受架构决策。资料未提供具体模式清单、卡片内容、安装命令或收费信息。