# antd-pro-crud

基于 Ant Design Pro Components 的 CRUD 组件库，支持常见后台列表、新增/编辑弹框、详情弹框，以及移动端卡片列表与筛选能力。

## 安装

```bash
npm install antd-pro-crud
```

## 基础使用

```tsx
import ProTable from 'antd-pro-crud/ProTable';
import { Portal } from 'antd-pro-crud';

export default function Page() {
  return (
    <>
      <ProTable
        crudKey="user"
        access={() => true}
        umiRequest={request}
        columns={[
          { dataIndex: 'name', title: '姓名' },
          { dataIndex: 'age', title: '年龄', valueType: 'digit' },
          { title: '操作', valueType: 'option' },
        ]}
      />
      <Portal />
    </>
  );
}
```

## 当前已验证能力

- `ProTable` 新增表单：必填校验、提交关闭、成功提示
- `ProTable` 编辑表单：回填初始值、提交关闭、成功提示
- `MyColumns` 扩展：`hiddenInAdd`、`hiddenInEdit`、仅表单字段显示
- 自定义 CRUD：`add.modalProps.title`、`edit.modalProps.title`
- 移动端筛选表单：分类/状态筛选提交
- `Portal` 命令式表单：必填校验、提交关闭、成功提示

## 使用约定

- 使用新增、编辑、详情弹框时，页面中必须渲染 `Portal`
- 列表接口默认读取 `data.records` 和 `data.total`
- 如果后端返回结构不是 `{ data: { records, total }, success }`，请通过 `crud.list.formatResult` 转换

## 仓库说明

- 组件包源码位于 `packages/core`
- CLI、代码生成器和脚手架模板已拆分到独立 workspace 包维护
- 完整文档位于仓库根 `docs/` 与 `packages/core/src/`
