Files
kitchen/.trae/rules/design-rules.md
Developer 2eaf317705 new
2026-04-09 00:45:59 +08:00

5.7 KiB
Raw Blame History

alwaysApply, description
alwaysApply description
false
  1. 设计系统 (Design System) 所有页面必须基于统一的设计令牌,禁止硬编码颜色、间距、圆角等。

设计变量 (CSS Variables) css :root { /* 颜色 / --primary: #; / 主色 / --secondary: #; / 辅助色 / --background: #; / 背景 / --text: #; / 正文 */

/* 字体 */ --font-family: 'Inter', system-ui, sans-serif;

/* 间距 (4的倍数) */ --space-1: 4px; --space-2: 8px; --space-3: 16px; --space-4: 24px; --space-5: 32px;

/* 圆角 */ --radius-sm: 4px; --radius-md: 8px; --radius-lg: 12px;

/* 阴影 */ --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1); } 统一风格要求 颜色以 黑白灰、蓝白 为主,保持简洁。

可适当使用毛玻璃效果backdrop-filter: blur())增强层次感。

圆角统一使用上述变量,避免零散定义。

尽量使用 emoji 提升界面亲和力(如 👍 表示点赞)。

  1. 布局规范 (Layout Guidelines) 所有页面必须遵循响应式设计,确保在手机、平板、桌面及折叠屏上均无溢出、无横向滚动。

核心原则 使用 Flexbox 或 Grid 布局,禁止固定宽度。

容器必须设置 max-width如 1200px配合 margin: auto 居中。

全局设置 box-sizing: border-box。

禁止出现 overflow-x除非必要且可控

图片max-width: 100%; height: auto; object-fit: cover。

响应式断点 设备 视口宽度范围 布局策略 手机 360px 640px 单列 平板 768px 1024px 双列 桌面 1280px 1920px 多列 大屏 >1920px 保持多列,容器居中 css .container { max-width: 1200px; margin: 0 auto; padding: var(--space-3); }

/* 平板及以上 */ @media (min-width: 768px) { .grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-4); } }

@media (min-width: 1024px) { .grid { grid-template-columns: repeat(3, 1fr); } } 折叠屏适配 (600px 900px) 自动切换双列布局。

避免关键内容置于屏幕中央折痕区域。

内容可重新流式排列(利用 order 或网格调整)。

页面骨架 html

Main 区域设置 overflow-y: auto确保内部滚动。

所有页面必须使用统一 AppLayout 组件,禁止各自实现布局。

  1. 组件与代码结构 项目目录结构 text src/ ├── layout/ # 布局组件 (AppLayout, Header, Footer) ├── components/ # 可复用UI组件 (Button, Card, Modal) ├── pages/ # 页面级组件 ├── styles/ # 全局样式、设计令牌 ├── services/ # API请求 ├── hooks/ # 自定义逻辑 └── utils/ # 工具函数 编码规范 禁止position: absolute 做整体布局、固定 px 宽度、使用负 margin 修补结构。

函数拆分:单一职责,每个函数不超过 30 行。

变量命名:语义化,如 isLiked 而非 flag。

删除重复代码:提取公共逻辑到 hooks 或 utils。

日志关键操作如点赞、API调用添加 console.log 便于追踪,上线前可移除。

  1. API 设计规范

  2. 功能开发与测试(以点赞为例) 点赞逻辑核心要点 状态计算:使用新状态变量,避免旧状态干扰。

  3. AI协作规范 当使用AI辅助开发时遵循以下指令模板可大幅提升产出质量

总控 Prompt text 你是资深前端架构师。本项目必须遵循:

  1. 架构优先:先分析整体布局,再给出修改计划,最后修改代码。
  2. 布局规则flex/grid无固定宽度max-width容器禁止横向溢出响应式。
  3. 设计系统必须使用统一CSS变量禁止自定义颜色。
  4. 修改规则:如要改布局,必须整体重构,禁止只改局部组件。
  5. 代码结构:按 layout / components / pages / styles 组织。 安全重构流程 分析当前结构 → 2. 输出修改计划 → 3. 等待确认 → 4. 执行修改

禁止事项 使用 overflow:hidden 解决布局问题。

直接修改入口文件应只保留路由、Provider、样式引入

一次性改动过多文件(应分阶段:设计变量 → 布局容器 → 组件统一)。

  1. 存量项目接入设计系统(安全策略) 若项目已上线,采用渐进式重构,避免大规模报错:

阶段1添加 design-tokens.css只定义变量不修改任何页面。

阶段2创建统一 AppLayout 组件,新页面强制使用,旧页面逐步包裹。

阶段3建立 /dev-theme-test 页面,集中测试所有组件样式。

阶段4按页面逐一迁移不动业务逻辑。

核心思想:先视觉统一,再结构统一;不动业务,只换皮肤。

  1. 性能优化与日志 拆分函数:避免过大的 Page 对象,逻辑抽离到独立模块。

减少冗余:使用 wx.setStorageSync 缓存必要数据,避免重复请求。

日志分级:

console.info 记录关键流程(如点赞成功)。

console.warn 记录异常但不影响使用。

console.error 记录错误,并考虑上报。

README更新每次功能迭代后同步更新文档包括接口变更、存储字段说明。

  1. 通用建议 页面路径:新增页面必须在 app.json 中声明。

UI细节按钮、卡片等组件统一圆角、阴影营造精致感。

代码提交:遵循 type(scope): subject 格式,如 feat(like): 修复点赞状态反转问题。

核心三句话 Layout First 布局决定体验 Design System First 变量统一风格 Plan Before Code 计划先行,安全重构