前言
背景介绍
天猫超市卡充赠
778红包
开发挑战
熟悉 Web 开发、React、Ice 框架; 无 Weex / Muise 开发经验; 首次接入长颈鹿平台,无支付宝收银台对接经验。
信息获取
| |
⚠️ 关键痛点:API 使用受机型、系统版本、框架环境多重影响,且文档未统一归集。例如,uni-api 的 Cashier.pay 目前仅支持鸿蒙设备,iOS/Android 需降级至 WindVane 方案。
构建面向AI的结构化研发知识库
/docs├── framework/ # 框架规范│ ├── muise-intro.md│ ├── weex-limitations.md│ └── dark-mode-guide.md├── component/ # 组件使用规范│ ├── appear-tracking.md│ ├── tbs-hooks-usage.md│ └── loading-toast.md├── api/ # 接口与能力调用│ ├── payment-alipay.md│ ├── windvane-call.md│ └── mtop-request.md├── best-practices/ # 最佳实践│ ├── folder-structure.md│ ├── type-definition.md│ └── tracker-patterns.md└── templates/ # 模板文件 ├── component-template.md └── tracking-spec-template.md
所有文档使用 Markdown 格式,标题层级清晰; 添加 YAML Front Matter 元信息,便于检索与分类:
---title: 支付宝收银台接入指南tags: [payment, alipay, casher, windvane]platform: muise, weexenv: ios, android, harmonyauthor: xxxlast_updated: 2025-08-25related_components: - @ali/uni-api---
建立“问题-解法”体系
原因:uni-api.Cashier.pay 当前仅支持鸿蒙系统。
解决方案:
判断 canIUse(Cashier?.pay) 和 process.env.Weex2; 不支持时降级至 WindVane 方案; 统一返回 Promise 格式。
if (canIUse(Cashier?.pay) && process.env.Weex2) { // 使用 Cashier} else { // 降级 WindVane}提炼“可复用模式”
🎯 目标:让 AI 能基于“模式语言”快速生成正确代码。
从“人找知识” → “知识智能嵌入上下文” → “知识驱动AI自动编码”
信息整合分析
实际编码实践
rules: - name: 标签与结构规范 description: | Weex 环境仅支持有限标签: - 文案使用 <span> - 图片使用 <img> - 跳转使用 <div onClick={() => tracker.open(DETAIL_URL, { append: true })}> - name: 样式规范 description: | - 优先使用 Flex 布局 - background 必须拆分为 background-color - fontFamily 必须内联设置 - name: 类型安全 description: | 所有变量必须使用 TypeScript 显式声明类型,禁止 any 和 implicit any - name: 组件结构 description: | 组件目录清晰,拆分合理: - components/Button/ - index.tsx - style.ts - types.ts - name: 埋点规范 description: | 曝光埋点: - 使用 @ali/tbs-appear 的 <Appear> 组件 - 整体容器曝光 action 自定义,arg1 区分 - 每个 item 单独曝光 点击埋点: - arg1 固定为 Search_giraffe_ItemClick - 自定义参数放入 args 字段 - name: 监控告警 description: | 使用 jstracker 上报: - success: true / false 标识成功率(如红包领取) - 失败处上报错误量级日志 - name: 依赖管理 description: | - appear 组件:@ali/tbs-appear - hook 工具:@ali/tbs-hooks - Loading / Toast:uni-api - 数据请求:@ali/universal-mtop输入准备:构建高质量上下文
将开发规范整理为 docs/ 目录:
docs/style-guide.md docs/tracking.md docs/api.md docs/charge.md(支付流程说明) 配置 muise-project.mdc 实现硬性约束 提供当前项目中的类型定义与已有组件
示例提问(Prompt 设计)
红包产品定义:1. 红包数量:2/3个,否则不展示2. 红包状态:未解锁、待领取、已领取展示倒计时、已使用● 每个红包项显示金额、门槛、行动名称● 针对红包的不同状态行动点有不同的展示文案和样式,具体见设计稿● 整体容器和每个 item 都需要曝光埋点● 使用 Appear 组件,arg1 分别为 "Search_giraffeExposure" 和 "Search_giraffe_ItemExposure"● 点击事件埋点 arg1=Search_giraffe_ItemClick● 使用 Flex 布局,颜色适配暗黑模式● 所有字段使用 TypeScript 类型定义
快速搭建 UI 结构与 JSX 模板 自动引入 Appear 组件并配置曝光 基本符合 Flex 布局要求
补充样式细节:字体大小、间距、圆角、阴影 使用内联样式重写 fontFamily 和 background-color 手动调整节点层级以匹配 Weex 渲染逻辑
抽象通用 useTracking Hook,统一管理 tracker 实例 约束所有曝光使用 <Appear> 组件封装 规范 arg1 命名空间,避免冲突
创建 types/index.ts 统一导出公共 interface 删除重复定义,引用统一类型文件
- name: 禁止引用未定义组件description: 不得使用项目中不存在的组件,如 CustomButton、BaseCard- name: Tracker 使用规范description: 必须通过 useTracker() 获取实例,禁止 window.tracker- name: 状态逻辑最小化description: 不得添加需求外的状态字段或 action
✅ 实现“问题 → 修复 → 规则化 → 防复发”闭环
🔑 核心认知:
AI 不是“全自动编码机器人”,而是“高阶编程协作者”。
真正的提效,来自于将经验转化为规则,将文档转化为上下文,将人工踩坑变为前置约束。
AI编程提效成果
组件标准化封装:AI 快速生成符合规范的 UI 组件; 埋点自动化:通过规则约束,确保曝光与点击埋点全覆盖; 监控一体化:成功率、错误量级监控与主逻辑同步产出。
AI 编程的边界与进化方向
在上下文明确、任务边界清晰的场景下表现优异; 当输入文档过多时,存在“信息稀释”风险,影响准确性; 单靠“喂全文档”并非最优解。
