用途:帮助用户把基于 Ant Design Pro 的项目升级到最新版本。做法是拉取官方模板,与用户项目逐文件对比后智能合并,尽量只改框架相关部分,保留业务代码。
主要能力:区分框架文件(如 package.json、config/config.ts、config/routes.ts、config/defaultSettings.ts、config/proxy.ts、src/app.tsx、src/access.ts、src/global.tsx、src/loading.tsx、src/requestErrorConfig.ts、src/typings.d.ts、tsconfig.json、biome.json、.husky/、commitlint.config.*)与业务文件(src/pages、src/components、src/models、src/services 自定义文件、src/locales、src/utils、mock 等);识别依赖版本变化、配置项变化、导入路径变化(如 'umi' → '@umijs/max')与 API 变化;合并时采用模板结构并保留用户自定义,业务文件仅做必要调整。
使用方式:先确认 git 状态干净或用户同意继续;然后执行 rm -rf /tmp/ant-design-pro-upgrade 与 git clone --depth=1 https://github.com/ant-design/ant-design-pro.git /tmp/ant-design-pro-upgrade 获取模板;分类并对比文件后合并;运行 npx antd env --format json、npx antd lint ./src --format json --only deprecated 检查 antd 变更,跨大版本时运行 npx antd migrate <current_major> <target_major> --format json;最后执行 npm install、npm run lint、npm run build 验证,并清理临时目录。
适用场景:需要把 Pro 项目跟进官方最新模板、处理依赖与配置升级、迁移 antd API 的场景。
限制:src/services/ant-design-pro/ 为自动生成,不应手动编辑,升级后需运行 npm run openapi 重新生成;合并需保守,不确定是否为用户自定义时应询问;不硬编码版本;需用户自行测试并提交变更。具体收费、价格与平台信息暂未提供。