SuperAPI AI 工具集

component-naming

前端与建站

查看项目

更新于 10-16 08:10

技能介绍

用途:这是一份 React 组件命名约定指南,用于在创建、修改、评审或重构 React 组件时,保证同一代码库内命名一致。

主要能力与规则:

  1. 组件名使用 PascalCase,如 FeaturedPost、TagFilter,不使用小驼峰或下划线形式。
  2. 采用「领域+角色」模式,名称同时体现领域上下文与组件角色,如 FeaturedPost(Featured 为领域、Post 为角色)、TagFilter、ReadingProgress、MetricCard、HeroSection;避免 Card、Filter、Section 这类过于笼统、缺少领域信息的名字。
  3. 相关子组件使用点号复合组件模式,如 PostCard.Image、PostCard.Title、PostCard.Meta;不要用 PostCardImage、PostCardTitle 这类平铺命名。
  4. 避免问题后缀:不使用 -Container、-Wrapper、-Component、-Element 结尾的命名,改用清晰的领域+角色,如 MetricCard、PostList、TagBadge。
  5. 避免用布局或样式描述命名,应描述用途而非外观,如不用 LeftSidebar、BigHeader、RedButton、TwoColumnGrid,改用 NavigationSidebar、PageHeader、DangerButton、BentoGrid。

文件与位置约定:文件名使用与组件名对应的 kebab-case,如 FeaturedPost 对应 featured-post.tsx,ReadingProgress 对应 reading-progress.tsx。目录方面,可复用组件放在 src/components/,认证组件放在 src/components/auth/,应用级共享组件放在 src/app/components/,页面级组件分别放在对应页面目录下的 components/ 中(如 about、blog、dashboard、studio/media、studio/posts、studio/series)。

使用方式与检查项:评审组件名时逐项核对——是否 PascalCase;是否有明确领域上下文;是否有明确角色(Chart、Card、List、Section、Filter 等);是否含 -Container/-Wrapper/-Component 后缀;是否含布局或样式描述;文件名是否为对应 kebab-case;相关子组件是否采用复合模式。

限制:资料未提供该规范的自动化校验工具、安装命令或强制配置,仅以人工检查清单形式给出;具体项目目录结构以实际代码库为准。