day07-03.Layout模块

基本结构和样式reset

结构创建

image.png

实现步骤

  1. 打开 antd/Layout 布局组件文档,找到示例:顶部-侧边布局-通栏

  2. 拷贝示例代码到我们的 Layout 页面中

  3. 分析并调整页面布局

代码实现 pages/Layout/index.js

pages/Layout/index.scss

样式reset

二级路由配置

使用步骤

  1. 在 pages 目录中,分别创建:Home(数据概览)/Article(内容管理)/Publish(发布文章)页面文件夹

  2. 分别在三个文件夹中创建 index.jsx 并创建基础组件后导出

  3. router/index.js 中配置嵌套子路由,在Layout中配置二级路由出口

  4. 使用 Link 修改左侧菜单内容,与子路由规则匹配实现路由切换

代码实现 pages/Home/index.js

pages/Article/index.js

pages/Publish/index.js

router/index.js

配置二级路由出口

路由菜单点击交互实现

image.png

点击菜单跳转路由

菜单反向高亮

展示个人信息

image.png 实现步骤

  1. 在Redux的store中编写获取用户信息的相关逻辑

  2. 在Layout组件中触发action的执行

  3. 在Layout组件使用使用store中的数据进行用户名的渲染

代码实现 store/userStore.js

pages/Layout/index.js

退出登录实现

实现步骤

  1. 为气泡确认框添加确认回调事件

  2. store/userStore.js 中新增退出登录的action函数,在其中删除token

  3. 在回调事件中,调用userStore中的退出action

  4. 清除用户信息,返回登录页面

代码实现 store/modules/user.js

pages/Layout/index.js

image.png

处理Token失效

业务背景:如果用户一段时间不做任何操作,到时之后应该清除所有过期用户信息跳回到登录

首页Home图表展示

home.png

图表基础Demo实现

图表类业务渲染,我们可以通过下面的顺序来实现

  1. 跑通基础DEMO

  2. 按照实际业务需求进行修改

安装echarts

实现基础Demo

image.png

组件封装

基础抽象

抽象可变参数

Last updated

Was this helpful?