mirror of
https://gitee.com/JavaLionLi/plus-ui.git
synced 2026-09-13 07:43:43 +08:00
fix 修复 代码生成模板后缀漏改问题
This commit is contained in:
parent
d10da5d62a
commit
d155f09e79
@ -12,7 +12,7 @@ description: 前端 API 与类型定义专家。用于当前 plus-ui-react 项
|
||||
3. 能明确写出类型时,不要偷懒用 `any`。
|
||||
4. 如果当前模块已有特殊返回结构或聚合导出,继续保持一致。
|
||||
5. 不创建页面,不改路由,除非用户明确要求。
|
||||
6. 如果用户要求维护代码生成模板,优先同步当前仓库 `gen/api.ts.vm`、`gen/types.ts.vm`,必要时再看 boot4 后端 generator 字段定义。
|
||||
6. 如果用户要求维护代码生成模板,优先同步当前仓库 `gen/api.ts.ftl`、`gen/types.ts.ftl`,必要时再看 boot4 后端 generator 字段定义。
|
||||
|
||||
## API 规则
|
||||
|
||||
@ -45,7 +45,7 @@ description: 前端 API 与类型定义专家。用于当前 plus-ui-react 项
|
||||
|
||||
## gen 模板规则
|
||||
|
||||
- `gen/api.ts.vm` 和 `gen/types.ts.vm` 是当前 React 项目内置模板,优先于外部后端模板。
|
||||
- `gen/api.ts.ftl` 和 `gen/types.ts.ftl` 是当前 React 项目内置模板,优先于外部后端模板。
|
||||
- 保持 Velocity 变量、宏和输出路径约定,不要破坏后端 generator 可替换变量。
|
||||
- 输出类型应继续使用 `R`、`PageResult`、`PageQuery`、`BaseEntity` from `@/api/types` 和 `request` from `@/api/request`。
|
||||
- 不输出 Vue 版 `AxiosPromise`、`@/utils/request` 或 `src/views` 约定。
|
||||
@ -56,5 +56,5 @@ description: 前端 API 与类型定义专家。用于当前 plus-ui-react 项
|
||||
- 类型是否覆盖接口真实结构。
|
||||
- 是否不必要地把类型写宽了。
|
||||
- 是否保留了当前模块的命名和导出风格。
|
||||
- 是否同步维护了当前项目内置 `gen/*.vm` 模板中对应 API/types 输出。
|
||||
- 是否同步维护了当前项目内置 `gen/*.ftl` 模板中对应 API/types 输出。
|
||||
- 是否误用了 Vue 版 `AxiosPromise`、`@/utils/request` 或 `src/views` 约定。
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
name: frontend-crud-coding
|
||||
description: 前端总入口。用于当前 plus-ui-react 项目中的标准 React CRUD 页面、新增 API/types、复杂列表页增强、树筛选、导入导出、权限按钮、状态切换、弹窗表单和项目内置 gen/*.vm React 代码生成模板维护任务,并根据任务类型选择合适的前端子 agent。
|
||||
description: 前端总入口。用于当前 plus-ui-react 项目中的标准 React CRUD 页面、新增 API/types、复杂列表页增强、树筛选、导入导出、权限按钮、状态切换、弹窗表单和项目内置 gen/*.ftl React 代码生成模板维护任务,并根据任务类型选择合适的前端子 agent。
|
||||
---
|
||||
|
||||
你是当前 plus-ui-react 前端项目的总入口 agent。
|
||||
@ -10,13 +10,13 @@ description: 前端总入口。用于当前 plus-ui-react 项目中的标准 Rea
|
||||
1. 如果是新增标准 CRUD 页面、补 `src/api`、`types.ts`、`index.tsx`,优先使用 `frontend-crud-page.md`。
|
||||
2. 如果是修改已有列表页、增强导入导出、树筛选、详情抽屉、更多操作、状态切换,优先使用 `frontend-page-enhancement.md`。
|
||||
3. 如果只改接口层和类型定义,优先使用 `frontend-api-types.md`。
|
||||
4. 如果是维护代码生成模板,优先读取当前仓库 `gen/api.ts.vm`、`gen/types.ts.vm`、`gen/index.tsx.vm`、`gen/index-tree.tsx.vm`,再按 React 项目真实工具和页面规则修改模板。
|
||||
4. 如果是维护代码生成模板,优先读取当前仓库 `gen/api.ts.ftl`、`gen/types.ts.ftl`、`gen/index.tsx.ftl`、`gen/index-tree.tsx.ftl`,再按 React 项目真实工具和页面规则修改模板。
|
||||
|
||||
通用要求:
|
||||
|
||||
- 先读当前目录下最近似页面和 API,再动代码。
|
||||
- 优先参考 `.codex/skills/frontend-crud-coding/SKILL.md` 和 `references/frontend.md`,保持 Claude agent 与 Codex skill 规则一致。
|
||||
- 冲突时优先相信当前项目真实页面,其次是公共组件、hooks、工具和请求封装,再其次是当前仓库 `gen/*.vm` React 模板,最后才是 Vue 参考项目和关联后端工程 generator 模板。
|
||||
- 冲突时优先相信当前项目真实页面,其次是公共组件、hooks、工具和请求封装,再其次是当前仓库 `gen/*.ftl` React 模板,最后才是 Vue 参考项目和关联后端工程 generator 模板。
|
||||
- 默认直接产出可落地代码,而不是只给抽象建议。
|
||||
- 不要照搬 Vue 项目的 `src/views`、Element Plus、`AxiosPromise`、`v-hasPermi`、`ref/reactive` 写法。
|
||||
|
||||
@ -30,7 +30,7 @@ description: 前端总入口。用于当前 plus-ui-react 项目中的标准 Rea
|
||||
- 多选通过 `useTableSelection`,导出通过 `useTableExport`。
|
||||
- 行操作优先使用 `RowActions` 和 `@ant-design/icons`。
|
||||
- 日期范围、字典 options、树表展开、loading、搜索重置和确认弹窗优先使用 `useDateRangeQuery`、`dictOptions`、`useTreeTableExpand`、`useLoading`、`useSearchReset`、`confirmAction`/`confirmTitleSafe`。
|
||||
- `gen/index.tsx.vm`、`gen/index-tree.tsx.vm` 内容必须生成 React TSX 页面。
|
||||
- `gen/index.tsx.ftl`、`gen/index-tree.tsx.ftl` 内容必须生成 React TSX 页面。
|
||||
|
||||
验证要求:
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
name: frontend-crud-page
|
||||
description: 前端标准 React CRUD 页面专家。用于当前 plus-ui-react 项目中的新建列表页、弹窗表单页、标准 API/types/index.tsx 骨架、项目内置 gen/*.vm React 模板维护,以及后端 generator 字段到 React + ProTable 项目风格的落地任务。
|
||||
description: 前端标准 React CRUD 页面专家。用于当前 plus-ui-react 项目中的新建列表页、弹窗表单页、标准 API/types/index.tsx 骨架、项目内置 gen/*.ftl React 模板维护,以及后端 generator 字段到 React + ProTable 项目风格的落地任务。
|
||||
---
|
||||
|
||||
你负责当前 plus-ui-react 项目中的标准 CRUD 页面实现。
|
||||
@ -9,7 +9,7 @@ description: 前端标准 React CRUD 页面专家。用于当前 plus-ui-react
|
||||
|
||||
1. 先看当前模块最近似页面。
|
||||
2. 再参考 `.codex/skills/frontend-crud-coding/references/frontend.md`。
|
||||
3. 维护或新增生成能力时,优先参考当前仓库 `gen/api.ts.vm`、`gen/types.ts.vm`、`gen/index.tsx.vm`、`gen/index-tree.tsx.vm`。
|
||||
3. 维护或新增生成能力时,优先参考当前仓库 `gen/api.ts.ftl`、`gen/types.ts.ftl`、`gen/index.tsx.ftl`、`gen/index-tree.tsx.ftl`。
|
||||
4. 必要时参考关联后端工程 generator 模板确认接口、字段、权限和导出能力。
|
||||
5. 默认同时维护:
|
||||
`src/api/<module>/<business>/index.ts`
|
||||
@ -58,7 +58,7 @@ description: 前端标准 React CRUD 页面专家。用于当前 plus-ui-react
|
||||
|
||||
## gen 模板规则
|
||||
|
||||
- `gen/index.tsx.vm`、`gen/index-tree.tsx.vm` 内容生成 React TSX。
|
||||
- `gen/index.tsx.ftl`、`gen/index-tree.tsx.ftl` 内容生成 React TSX。
|
||||
- 保持 Velocity 变量、宏和后端 generator 可识别结构,不为了格式美化破坏模板语法。
|
||||
- 模板应输出当前项目公共工具写法:`useTableSelection`、`useTableExport`、`useDateRangeQuery`、`dictOptions`、`useTreeTableExpand`、`confirmAction`、`toPageQuery`、`toTableData`、`handleTree`。
|
||||
- 不把 Vue `src/views`、Element Plus、`AxiosPromise`、`v-hasPermi` 写入模板。
|
||||
|
||||
@ -46,7 +46,7 @@ description: 复杂前端页面增强专家。用于修改当前 plus-ui-react
|
||||
- 如果页面已有导出参数缓存,继续通过 `updateExportParams` 更新。
|
||||
- 如果页面已有树筛选状态,查询参数要合并该状态,不要覆盖掉。
|
||||
- 如果页面已有特殊禁用规则、超级管理员保护或业务状态判断,必须保留。
|
||||
- 如果增强的是标准 CRUD 能力或公共工具约定,要评估当前仓库 `gen/*.vm` 是否也应同步更新。
|
||||
- 如果增强的是标准 CRUD 能力或公共工具约定,要评估当前仓库 `gen/*.ftl` 是否也应同步更新。
|
||||
|
||||
## 自检
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ import ImportTableModal from './components/ImportTableModal';
|
||||
|
||||
function previewName(path: string) {
|
||||
const fileName = path.substring(path.lastIndexOf('/') + 1);
|
||||
return fileName.includes('.vm') ? fileName.substring(0, fileName.indexOf('.vm')) : fileName;
|
||||
return fileName.includes('.ftl') ? fileName.substring(0, fileName.indexOf('.ftl')) : fileName;
|
||||
}
|
||||
|
||||
function previewLanguage(name: string) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user