catalog/repos/agustinoberg--dx-expert-skill.md

2.1 KiB
Raw Blame History

React Native 开发体验规范

React Native Expo AI编程 代码规范 组件模式

dx-expert

一个用于 AI 编程代理的技能,在 React Native Expo 项目中强制执行开发体验原则。

安装

npx skills add agustinoberg/dx-expert-skill

功能介绍

该技能通过强制执行以下规范,教导 AI 代理编写简洁、可维护的 React Native 代码:

  • 单一职责原则 — 状态逻辑放在 Hook 中,渲染逻辑放在组件中
  • Hook 架构 — 每个文件一个 Hook小而专注使用单一对象参数
  • 复合组件模式 — 使用 Component.Root / Component.Header / Component.Content 组合方式,替代布尔 props 和 prop 透传
  • 避免 useEffect — 优先使用派生状态、事件处理器和计算值
  • 记忆化策略 — 不使用 useCallback交由 React Compiler 处理),仅对计算型常量使用 useMemo
  • 用户体验打磨 — 键盘处理、加载/错误/空状态、安全区域、触摸目标
  • Expo Router 优先 — 文件路由、布局、模态框、参数传递,优先于手动替代方案
  • 库推荐 — 当代码明显在重复造轮子时,主动建议更好的库

触发时机

以下情况下,该技能会自动生效:

  • 创建或修改多个组件时
  • 编写跨越多个关注点的逻辑时
  • 审查将状态逻辑与渲染混合的代码时
  • 为清晰性重构现有代码时

核心理念

组合即一切。 与其使用带有不断增长的布尔 propsisEditingisThreadisForwarding的庞大组件不如构建组合共享内部实现的独立组件树。Provider 定义接口,每个消费者决定具体实现。

// 不推荐
<Composer isEditing={true} hideClientPicker={true} showCancelButton={true} />

// 推荐
<EditComposer />  // 只渲染编辑所需的内容,无需布尔值

兼容性

适用于任何支持 Agent Skills 规范的 AI 编程代理:

  • Claude Code
  • Cursor
  • Windsurf
  • Cline
  • GitHub Copilot
  • 以及 30 余款其他工具

许可证

MIT