该项目为电商后台的管理系统。设计了登录页面。

管理人员需要通过输入正确的用户名和密码才能登录。登陆成功之后进入管理页面:

管理页面由五个子模块组成:用户管理,权限管理,商品管理,订单管理,数据统计;
每个子模块有若干子模块组成,用户管理下->用户列表,权限管理->角色列表,权限管理,商品管理->商品列表,分类参数,商品分配,订单管理->订单列表,数据统计->数据报表
登录页面中对用户输入的内容进行预校验,如果不符合要求则,则不向后端发送请求,同事挂载路由守卫,防止强制跳转。同时设置令牌校验,避免重复登录。如果用户输入格式正确的用户名以及密码时,向后端发送请求,请求通过则跳转到管理页面,否则返回登录页面。
路由导航守卫:
// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
// to 将要访问的路径
// from 代表从哪个路径跳转而来
// next 是一个函数,表示放行
// next() 放行 next('/login') 强制跳转
if (to.path === '/login') return next()
// 获取token
const tokenStr = window.sessionStorage.getItem('token')
if (!tokenStr) return next('/login')
next()
})
登录页面核心代码:
登录
重置
管理页面有一个侧面的两级菜单,菜单的数据来自于后端,点击二级菜单会跳转到相应的子页面中。在el-menu中设置router属性,即可通过index添加到路由上进行跳转。
电商后台管理系统
退出 ||| {{item.authName}} {{subItem.authName}}
用户管理下有用户列表,这里渲染了后端的用户列表,可以编辑用户信息,删除用户,为用户分配角色,还可以对用户是否禁用进行管理;除此之外,还添加了查询用户,添加用户,和分页功能。

核心代码:
首页
用户管理
用户列表
添加用户
取 消
确 定
取 消
确 定
当前的用户:{{userInfo.username}}
当前的角色:{{userInfo.role_name}}
分配新角色:
取 消
确 定
角色列表中可以创建新的角色,创建的新的角色可以在用户管理中赋予用户,同时可以为已有的角色赋予权限
首页
权限管理
角色列表
添加角色
{{item1.authName}}
{{item2.authName}}
{{item3.authName}}
{scope.row}}
-->
权限列表对不同的权限做出展示,只发送一个请求即可获取所有需要的数据
首页
权限管理
权限列表
一级
二级
三级
首页
商品管理
商品分类
添加分类
一级
二级
三级
编辑
删除
取 消
确 定
首页
商品管理
商品列表
添加商品
{{scope.row.add_time | dateFormat}}
在商品分类中点击新增商品,则跳转到新增商品窗口

首页
商品管理
添加商品
点击上传
添加商品
在分类参数中选择一件商品,可以为其添加静态或者动态参数,这个参数可以展示在移动端商品的属性中。

首页
商品管理
参数列表
选择商品分类:
添加参数
{{item}}
+ New Tag
编辑
删除
添加属性
{{item}}
+ New Tag
编辑
删除
取 消
确 定
取 消
确 定
订单管理的实现和用户管理有很多类似的地方,都是向后端发送请求然后渲染到页面上
首页
订单管理
订单列表
已付款
未付款
{{scope.row.is_send}}
{{scope.row.create_time | dateFormat}}
取 消
确 定
{{activity.context}}
数据统计部分用到了echarts,从后端获得数据后通过 _.merge()将数据组合在一起,最后渲染在页面上
首页
数据统计
数据报表
目录中有后端以及sql文件,按照说明运行即可
电商系统前端: 电商管理系统前端
黑马程序员前端
上一篇:webpack看这一篇就够了