From fe1692fd7f4f307fea8054da6c6c50d5df2bf2d8 Mon Sep 17 00:00:00 2001
From: wsj <593216709@qq.com>
Date: Tue, 27 Oct 2026 23:02:57 +0800
Subject: [PATCH] feat: 提交

---
 .claude/skills/new-page/SKILL.md |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/.claude/skills/new-page/SKILL.md b/.claude/skills/new-page/SKILL.md
index 70fb558..4e5b61c 100644
--- a/.claude/skills/new-page/SKILL.md
+++ b/.claude/skills/new-page/SKILL.md
@@ -50,10 +50,12 @@
 - 使用 `ProTable`,不要手写「筛选表单 + Table」。
 - `columns` 必须放在独立 `columns.tsx`,类型为 `ProColumns<T>[]`;需要回调时导出 `createXxxColumns(options)` 工厂函数。
 - 页面中用 `useMemo` 缓存 columns,用 `useCallback` 包裹事件处理函数。
+- `request` 单独定义:在组件内声明 `const fetchList = useCallback((params: XxxListParams) => getXxxList(params), [])`,再传给 `request={fetchList}`;不要在 `<ProTable />` 标签里内联箭头函数。
 - 页面组件不直接写请求:列表查询、删除等接口调用统一放在同目录的 `server.ts`,组件只调用导出的方法。
 - `server.ts` 使用 `@/api/request` 提供的 `request` 发送请求,不要直接使用 axios;泛型顺序为 `request<请求参数, 响应数据>`。
 - 分页使用 `defaultPageSize`(不要用受控的 `pageSize`);需要切换每页条数时设置 `showSizeChanger: true`。
 - 不需要右侧工具栏图标时用 `options={false}`。
+- 表格样式:有 `toolBarRender` 时不加 `cardProps`;没有 `toolBarRender` 时补充 `cardProps={{ bodyStyle: { padding: 20 } }}`。
 - 表格补充 `scroll={{ x: ... }}` 以兼容窄屏。
 
 ## 3. 分支 B:非表格页
@@ -131,6 +133,8 @@
 
 - [ ] 已选择正确分支并整体使用对应模板
 - [ ] 表格页使用 ProTable,columns 独立在 `columns.tsx`
+- [ ] `request` 已提取为独立的 `useCallback` 方法,未在标签内内联
+- [ ] 表格页无 `toolBarRender` 时已加 `cardProps={{ bodyStyle: { padding: 20 } }}`,有 `toolBarRender` 时未加
 - [ ] 非表格页未创建 `columns.tsx`,使用合适的 Ant Design 组件
 - [ ] 两个分支均已创建 `server.ts`,组件内没有直接写请求
 - [ ] 类型使用 `ProColumns<T>` / 明确接口,没有 `any`

--
Gitblit v1.9.3