tp和 vue 管理后台管理系统_Vue|电商后台管理系统(2)

be65d7226bd034b2171a6f736c3f4fc4.gif

点击上方蓝字设为星标b6e3b3b0247749f84536ec38add1f0f6.png

下面开始今天的学习~

本期推文继续完成电商后台管理系统,上期已经实现该系统的登陆界面、路由、登录、退出及导航守卫功能,本期将继续完善该系统的以下功能:从后端获取后台列表数据并渲染到前端页面、用户列表的展示、修改、删除和添加。

后台页面布局

本系统后台将采用Element UI 中的Container布局容器。基本结构如下:

32d3c687f2368345f8f3bacb3d75f3e0.png

代码框架:

1fe86376773f34e25c555b4993585cc6.png

经过简单的HTML+CSS美化后,界面如下:

1599b746ae8d18a20f7eae379c4d74e4.png

侧边栏美化

侧边栏的目录结构采用Element UI 中的NavMenu导航菜单。基本效果如下:

becfdc13491de121d6a784804cd64c8d.png

代码框架:

f7ceec37470a18260b076a45981b4ca5.png

稍作更改,变换图标后,界面如下:

5695913d40fdafcf127493d1829e4e0b.png

侧边栏数据渲染

根据后台API接口知后台菜单列表:

1fb7a016a1fdb3d0411c937dafad36a5.png

在加载后台列表前,需通过get方式得到后台响应的数据,才能将数据渲染至侧边菜单栏。故在模板渲染成HTML页面前,调用created(),在其中完成后台菜单栏数据的获取,即getMenuList()

c263bde6c2aaeb2d00d1be02bc1a3dff.png

设置拦截器,拦截每一次请求:

b2f468819c04221cf25b6f701ff410a7.png

通过遍历menulist中的数据,将其渲染至前端页面:

439100b5ccacfdf3c2b0ea6c01c82d98.png

27f13a656dcb9a85417ee57f376ae2d6.png

设置二级目录路由

通过Element UI 中NavMenu 导航菜单的属性router可设置子目录路由,即启用该模式会在激活导航时以 index 作为 path 进行路由跳转。

6833f0d48a8ed4e1c8c621346ec38e19.png

b480b56e0367e92fcbc250292c832aff.png

优化路由

设置主页路由,即进入后台主页自动跳转至欢迎页面

2e36e87c4df987295745d284ed2d211b.png

用户列表绘制

1 头部面包屑 采用Element UI中的Breadcrumb 面包屑进行搭建。

fe65b2baae78348ed6eb6d0a75db8223.png

edc2cefca12a9663c50e08e8a67a26a3.png

2 底部卡片区域 采用Element UI中的Card

5393ff11d3a9cea7986c2c7b123c76e2.png

3 卡片内容填充

1.添加搜索框

采用Element UI中的基础组件进行绘制(前文已讲解,此处直接使用),按钮与搜索框使用layout布局。

0a173c7bc904add765097f8685c77722.png

2.添加用户列表表格

采用Element UI中的带边框的Table,添加index标号序列,效果如下:

37c027bd2ab05ba36513165562c00725.png

3c042102f70720ffbba23b0f2a350333.png

3.填充表格数据

从后台接口文档可知,用户列表请求路径为users,请求方法为get。

78ffa76b197121f046a21c1b2dd65f44.png

ff5b0170585285f378efc7ef5e0f391e.png

在created()时获取后台用户列表数据

474f971879de3a60eed63714445dd0fc.png

渲染至前端表格中

58a77795951999a4bd713f0fe8441f8b.png

0ff44e46405e0b17e023a5527e8dd545.png

添加状态和操作区域内容

ca1f5650a8f386af10986a75d7b6c782.png

6e500d778a7ee61aaf8429d2c5a47197.png

4.用户列表数据分页

采用Element UI中的Pagination 分页,对所获取的用户列表数据进行分页。将前面所获取的页面总数,页码数等进行动态绑定。

9ba6e6d5ce3f0025efae0eece72f9a48.png

9f676ea92c8481d43261f03a9154e848.png

实现改变显示条数及切换页数

d6b817177332157147e950a906206ad7.png

8cc91c4ff7c4e044831914edacea3804.png

4 用户状态变更

通过状态栏开关切换,实现状态的启用与禁用。利用开关的change事件,当状态开关发生改变时,后台数据随之改变。根据后台接口文档可知:

9f9eb5bc2bf6d0c87f5a8dcefa220d1b.png8baf6a63dfd681547333fc70bdf103ce.png

5 搜索用户功能 给搜索按钮添加getUserList()事件,并将搜索框内的值与queryInfo.query绑定,通过用户姓名进行搜索。

2e51430d01dd9d623f7f4f596c759e49.png

a05ae146863316b0715a104d2c5dd445.png

6 添加用户表单

采用Element UI中的Dialog 对话框,当用户点击添加用户,弹出添加用户的对话框,在对话框内,添加一个表单,供用户进行账号信息的编辑,并进行用户的添加。

对话框显示与关闭状态:addDialogVisible 对话框关闭函数:addDialogClosed() ref=“addFormRef”:注册引用信息 :model=“addForm”:将输入表单数据进行绑定

eeb1a4da039bafac3ca29f0d81ef6fbc.png

7 表单信息验证

为减轻服务器压力,在发送添加用户请求前进行数据验证,即验证各项数据是否合法。

采用Element UI中的自定义表单验证,分为定义验证规则对象、自定义验证方法和绑定验证方法(上面已经绑定)三步。

b0c50f717eb87a9afb5d1a62cec6f83c.png

1ce55c8c315a8f9ce9bf064165bb3284.png

8 添加用户

点击确定按钮,若各项信息均输入无误,则进行用户的添加。

查看后台接口文档可知:

f0e72bb9252ad033184d4124ec36fc7d.png

2849036b686a5d2a87632829149d7be1.png

a33eb0d8ddce8ebcadce82e4b5f41f1e.png

9 修改用户信息

点击修改按钮,弹出修改用户信息对话框,可对相关信息进行修改,并实时显示。

主要操作步骤与添加用户同理。

363a13f4dc80c3c810c9ec43366bac2b.png

6cebed026808a599a0d47fe276a154fc.png

10  删除用户

在点击删除用户后弹出是否确认删除对话框,若选择删除则删除该用户,否则不进行删除操作。

过程与上述添加、修改用户信息同理,采用Element UI中的confirm进行删除的确认。

059f3b03ad1b9c6bb478da157e99f7db.png

1dfe7d6cd562da1ef91ff389849f53fd.png

——————end——————

图 片 / Cs Max

编 辑 / Liony

e365ae476da2977113f3948637a91bed.png 在看点这里 1bcc09341773970e0020e25d6fe83381.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值