PACP 前端代码生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_aeb36e80/pacp-coding-frontend。
技能介绍
要解决的问题
在 PACP 体系里,一个业务模块的前端工作并不复杂,但琐碎:列表页、详情页、API 封装、路由配置要按同一套路径规范和接口契约落地,且组件选型要跟 @bovo-vue/platform 与 @bovo-vue/pacp-components 对齐。手写这些代码容易在字典渲染、审计字段、弹窗结构等细节上反复返工。pacp-coding-frontend 把这个工作交给子 agent:读取模块规格,直接产出可继续开发的前端代码骨架。
核心能力与工作流程
该技能是 PACP 前端代码生成的执行者,由 pacp-spec 在复杂业务场景下调用,也可被 pacp-coding(v3.0 协调者)用于简单业务/单模块场景,或由用户在只要前端时单独调用。它负责生成一个业务-模块的完整前端代码,后端 SQL/Java/JUnit 由姊妹技能 pacp-coding-backend 负责。
- 规格解析与校验:读取
modules/{所属业务}.{功能模块}.spec.md,提取实体清单、字段规格表、功能矩阵、布局清单和占位符映射表。进入代码生成前会做完整性检查,例如表单组件列空值比例超过 30%、字典字段未标注字典:{代码集编号}、页面类型超出list/tree-list/list-tab支持范围时,会触发 CHECKPOINT 向用户确认,而不是直接猜。 - 模块级与实体级生成:先生成
src/router/{所属业务}/{功能模块}.js,导出get${Module}RouterConfig();再为每个实体生成${entity}-list.vue、${entity}-detail.vue与src/api/{所属业务}/{功能模块}-{entity}.js。API 封装统一走getAxios()+async/await,函数名以实体为前缀,URL 与接口契约对齐。 - 字典字段双轨处理:列表中标注为
enum的字段不能直接渲染原始代码值,需通过queryCommonCodes加载映射并在表格插槽中输出中文名。表单和搜索区的组件选型则区分两条线:BvCommonCode使用setCode并通过controlType切换控件形态;BvSelectForCodes、BvRadioForCodes、BvCascaderForCodes等按形态独立命名的组件使用dmjbh。选型优先级是字段规格表标注 → 原型形态推断 →frontend-component-mapping的字段语义绑定,代码集编号只能从规格的关联关系/数据来源列提取。 - 规范审核兜底:生成后执行前端零容忍规则扫描,并对照
@@/examples/hjkq/frontend/真实示例检查一致性;命中禁止项时先修复,再让用户选择修复后重试、强制生成或中止。
适用边界与注意点
参数使用 # 分隔,路径中含 # 时必须写成 \# 转义。输出目录固定为 src/views/、src/api/、src/router/,组件路径采用两段式,例如 /hjkq/station/station-list。字段覆盖面有硬要求:字段规格表中的每个字段都必须有对应渲染组件,CJR、CJSJ、XGR、XGSJ、SFSC 等审计字段在列表页显示、详情页隐藏。弹窗内容应直接放在 BvDialog 子节点,不要用 #default 插槽包装;表单内 el-row 不加 gutter。
规则细节不在本技能里硬编码,而是运行时通过 pacp-rules 查询,包括占位符定义、接口契约、frontend-vue3-coding-standards 零容忍规则、组件映射和 frontend-troubleshoot 故障排查表。因此它依赖 pacp-rules 可用;占位符含义和前端路径规范一律以规则库为准,不要凭记忆改写。
使用场景
- 复杂业务经 pacp-spec 解析原型后,调用本技能生成模块的列表页、详情页与 API 封装。
- 简单业务或单模块场景下,pacp-coding 协调者拿到临时规格后调用本技能即时产出前端代码。
- 用户只想要前端产物时,按规格文件与三个目录参数单点调用,直接得到 Vue3 组件与路由配置。
- 字段规格表出现字典字段时,需要按原型形态选 ForCodes 系列组件或 BvCommonCode,并生成字典加载逻辑。
适合人员
- 需要在 PACP 项目里补齐前端模块、希望列表页与接口契约一次对齐的 Vue3 开发者。
- 把规格文件交给 AI 生成代码、并要求组件选型符合 @bovo-vue 平台规范的团队技术负责人。
- 在简单业务场景下用 pacp-coding 协调生成、需要快速拿到可编译前端骨架的全栈工程师。