搭建react+ant design pro+umi 项目框架

一、 写本文的原因

我搭建react+antd+umi这个框架的原始资料主要是来源于(React+Umi4从零快速搭建中后台系统保姆级记录教程(一、项目创建及初始化))

而我写这篇文章的本意就是用来记录我用搭建时候的步骤汇总。

二、 npm和node版本

        我本地的npm 版本是:9.6.7

        

        我本地的node版本是:16.15.1

        

        并且我本地安装了yarn,而项目搭建的时候有使用到了yarn(这个看个人情况是否安装)。

        
        yarn 安装方式(安装的是全局的): npm install -g yarn

三、 开始搭建

        这里一共有3种搭建方式,方法一和方法二搭建出来的效果图是一样的,仅限于一个框架。而方法三搭建出来跟官网例子一样,有登录界面,并自带很多导航菜单例子,相对而言更完善。所以,可以根据需要来选择搭建方式。

1. 方法一:

        原始资料的搭建方式是使用 : npx create-umi@latest

安装成功后,使用npm start dev 将项目运行起来:

2. 方法二:

        如果上面那种方式安装不了,报错到自己不知道怎么解决,那就使用这种方法试试(我最开始就是用上面方法没安装好,才试了如下方法)。运行命令:npm create umi

 安装成功后,使用yarn start dev 将项目运行起来 :

3. 备注:

        以上两种方式安装都可以,第二种方式在后面选择的时候我选择了yarn安装。安装方式影响不大,看个人喜欢。但是值得注意的是,假如你用了yarn安装失败,想要再重新安装一次,那么重新安装的时候也只能使用yarn,因为npm和yarn在同一个项目中不能混用。除非你把原始文件夹删的干干净净后再重新安装。两种方式的运行效果都是一样的。

4. 路由配置

(1)方法一和方法二的说明

      从项目文件中内容可以看出,项目原始路由配置是在根目录的.umirc.ts 文件中,但是对我们来说,这样好似不太合理,所以,我们就将路由配置文件重新换个地方。

(2)配置方式更改

        (1) 在项目根目录下创建一个config文件夹,并在里面创建config.ts文件。

        (2)再把.umirc.ts 文件中的内容全部复制到config.ts文件中,并保存。

        (3) 删除原来的路由配置文件:.umirc.ts 文件(因为.umirc.ts优先级较高,如果这个文件不删,那么默认就会读取这个文件内的内容)。

        (4) 如果这是一个大项目,并且有很多页面,那么,这里可以将路由配置单独提出来写到一个文件中。例如,我在config文件夹下新增一个routes.ts文件,将路由配置部分挪过去,并在config.ts中引用routes.ts中的路由配置。

3. 方法三:

(1) 效果图

        我们先看最终效果图,可以看到与方法一和方法二的区别在于左侧菜单、页面颜色配置等。 

(2)搭建方式

         1)先运行命令,进行全局安装 :npm i @ant-design/pro-cli -g

               备注: 这里使用全局安装是为了以后创建此类项目可以用  pro create  XXX 快速创建,而不用再次安装ant-design/pro-cli -g ,所以接下来就使用此命令创建项目。

        2)在运行命令进行项目创建: pro create myProject

                ① 运行命令后要选择安装umi版本。这里我安装的是umi3。

                

                ② 然后选择安装的脚手架,我这里选择的是complete 完整的。

                

        ③ 然后就等它自动安装完成。

        ​​​               ​​​​​​ 

        ④  然后进入刚刚创建的项目文件夹,进行初始化操作(最好用管理员权限去操作,否则可能初始化不成功)。初始化操作可以使用npm和yarn两种。我使用的是yarn。

        

        ⑤ 依赖包安装后,就可以运行起来了(我用的是yarn),页面就是效果图上的样子。 

     

<think>我们正在回答用户关于UMI框架的学习指南、使用教程和入门文档的问题。根据提供的引用内容,我们可以整合信息并给出一个清晰的指南。引用[1]和引用[2]都介绍了Umi框架的基本情况,它是一个基于React的企业级前端应用框架,提供了丰富的功能和插件,支持快速构建高性能的前端应用。引用[3]则提到了使用umi搭建框架的几种脚手架选项。我们将按照以下步骤组织回答:1.介绍Umi框架及其特点2.快速入门:如何创建一个Umi项目并运行3.核心概念和功能:路由、数据流、插件等4.进阶学习:生态项目、最佳实践5.学习资源推荐同时,我们会在末尾生成相关问题。注意:所有独立公式(如果有的话)需要使用$$...$$,行内数学表达式使用$...$,但本问题涉及前端框架,可能较少使用数学公式。但为了遵循指令,如果出现变量等,我们会使用正确格式。开始回答:</think>### UMI框架学习指南与使用教程 UMI是一个基于React的企业级前端应用框架,提供开箱即用的开发工具和最佳实践,特别适合构建单页面应用(SPA)、多页面应用(MPA)和中后台系统。以下是系统化的学习路径: #### 一、基础入门 1. **环境准备** - 安装Node.js(建议v16+) - 安装包管理工具:`npm install -g yarn` 2. **项目初始化** ```bash # 创建项目目录 mkdir my-umi-app && cd my-umi-app # 使用脚手架初始化(引用[1]) npx umi init # 安装依赖 yarn install # 启动开发服务器 yarn dev ``` 访问`http://localhost:8000`查看效果 3. **核心概念** - **目录结构**(典型示例): ``` ├── config/ # 配置文件 ├── src/ # 源码目录 │ ├── pages/ # 路由组件(约定式路由) │ └── app.tsx # 运行时配置 └── package.json ``` - **约定式路由**:在`src/pages`下创建`index.tsx`即自动映射为首页路由[^2] #### 二、核心功能实践 1. **路由管理** - 动态路由:创建`src/pages/users/$id.tsx`实现`/users/123`路由 - 嵌套路由:通过`_layout.tsx`文件定义布局[^2] 2. **数据流管理** 集成Dva状态管理(引用[1]): ```jsx // models/user.js export default { state: { list: [] }, reducers: { updateList(state, { payload }) { return { ...state, list: payload }; } } } ``` 3. **插件系统**(引用[3]) 在`.umirc.ts`中配置: ```typescript export default { plugins: ['@umijs/plugins/dist/dva'], // 启用Dva插件 dva: { immer: true } // 插件配置 }; ``` #### 三、进阶开发 1. **性能优化** - 动态导入:`() => import('./Component')`实现代码分割 - 静态资源CDN:通过`chainWebpack`配置外部资源 2. **微前端集成** 使用`@umijs/plugin-qiankun`: ```typescript export default { qiankun: { master: { apps: [{ name: 'app1', entry: '//localhost:7001' }] } } }; ``` #### 四、学习资源推荐 1. **官方文档** - 中文文档:[Umi官方文档](https://umijs.org/) - 项目地址:[GitCode镜像](https://gitcode.com/gh_mirrors/um/umi)(引用[1]) 2. **生态工具** - **Umi UI**:可视化页面生成工具 - **Umi Request**:统一请求库(引用[1]) - **Ant Design Pro**:企业级模板(引用[3]) 3. **实战教程** - [Umi框架使用详细教程demo](https://example.com/umi-tutorial)(引用[2]) - 脚手架类型选择:`app`(基础项目)/`ant-design-pro`(中后台模板)/`library`(组件库)(引用[3]) > 提示:调试时可使用`yarn umi debug`查看详细配置解析过程
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值