当前位置: 首页 > news >正文

免费手机建网站有哪些软件阿里云域名查询和注册

免费手机建网站有哪些软件,阿里云域名查询和注册,企业信息公示系统 全国,中国保密在线网站培训系统后台管理项目介绍 一、项目结构的搭建 封装axios多环境变量的配置 二、开发流程 1.登录以及退出 登录的业务流程登录业务的相关技术点 token原理分析 登陆页面的布局 用到了以下的elment ui组件 创建登陆组件实现登录功能退出 2.主页面布局、用户列表功能 主页面布局侧边栏的…

后台管理项目介绍

一、项目结构的搭建

封装axios

首先要安装axios,一般我会在项目的src目录中,新建一个network文件夹,作为我们的网络请求模块,然后在里面新建一个http.js和一个api.js文件和一个reques.jshttp.js文件用来封装我们的axiosapi.js用来统一管理我们的接口url

request.js中添加请求拦截响应拦截。在请求拦截中,会给请求头添加token字段,还有loading动画的开启。在响应拦截中,可以做一些loading动画的关闭,还有可以根据后端返回的状态码,做一些检验token是否有效或者过期的操作。接着就是做一些axios进行的api接口的封装,这里我用到了asyncawait封装请求接口函数,这样可以将异步操作同步化操作,代码更加友好,避免回调地域的出现。

具体封装步骤可以去看axios的封装

多环境变量的配置

在项目根目录中新建.env.*
.env.development本地开发环境配置
.env.staging 测试环境配置
.env.production 正式环境配置
配置对应环境的变量,,用户可以根据需求修改,根据环境不同,变量就会不同了

具体封装步骤可以去看多环境变量

二、开发流程

  1. 用户管理模块
    登录/退出、状态切换、编辑、分页、分配角色、面包屑导航切换
  2. 权限管理模块
    添加角色、分配权限、权限展示、编辑、删除权限、面包屑导航切换
  3. 商品管理模块
    添加商品、编辑、分页、添加参数、添加属性、选择分类、添加分类
  4. 订单管理模块
    数据渲染、分页
  5. 数据统计模块
    echarts图表、数据渲染

1.登录以及退出

登录的业务流程
  • 在登录页面输入用户名和密码
  • 调用后台接口进行验证
  • 通过验证后,根据后台的响应状态跳转到项目主页
登录业务的相关技术点
  • 通过cookie在客户端记录状态
  • 通过session在服务器端记录状态
  • 通过token方式维持状态
token原理分析

在这里插入图片描述

登陆页面的布局

在这里插入图片描述

用到了以下的elment ui组件
  • el-form
  • el-form-item
  • el-input
  • el-button
  • 字体图标
创建登陆组件

在components文件夹中新建Login.vue组件

template,script,style标签,style标签中的scoped可以防止组件之间的样式冲突

<template><div><!-- 头像 --><!-- 登录区域 --></div>
</template><script>
export default {data() {return {}}
}
</script><style lang="less" scoped></style>
实现登录功能

给登录按钮添加点击事件,当用户点击登录按钮时,如果当前所输入的账号信息合法,则允许向服务器发送登录请求,服务器根据请求信息检查当前账号是否正确,并返回响应信息,客户端通过返回的响应信息做出相应响应,即若账号密码错误则提示登陆失败,反之,登陆成功,将当前的token存储至本地并跳转至后台主页。

退出
  • 清空token

  • 跳转到登录页

    // 给退出的按钮绑定一个logout事件
    logout() {
    // 清空token
    window.sessionStorage.clear()
    // 跳转到登录页
    this.$router.push(’/login’)
    },

2.主页面布局、用户列表功能

主页面布局

在这里插入图片描述

  • 结构布局采用了element ui里的container组件
侧边栏的布局以及渲染 请求数据

在element-ui中也提供了相应的组件,在NavMenu导航菜单中可以找到相应的组件对应的区域

data中定义一个数组menulist来接收左侧菜单数据

// 获取所有菜单async getMenuList() {const {data: res} = await this.$http.get('menus')if (res.meta.status !== 200) return this.this.$message.error(res.meta.msg)this.menulist = res.dataconsole.log(res);},
侧边栏菜单的伸缩

定义isCollapse属性默认false,点击切换状态

el-aside :width="isCollapse ? '64px' : '200px'"><div class="toggle-button" @click="toggleCollapsse">??</div>
12
// 点击按钮 切换菜单的折叠与展开toggleCollapsse() {this.isCollapse = !this.isCollapse},
用户列表功能

在这里插入图片描述

用到了以下element ui组件,记得按需导入在element.js中注册

  • BreadCRUMB面包屑导航
  • Card卡片视图
  • Form表单
  • Table表格
  • DIalog对话框
  • Pagination分页
  • Switch开关
  • MessageBox
面包屑导航区域
<!-- 面包屑导航 --><el-breadcrumb separator-class="el-icon-arrow-right"><el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item><el-breadcrumb-item>用户管理</el-breadcrumb-item><el-breadcrumb-item>用户列表</el-breadcrumb-item></el-breadcrumb>
卡片视图区域、搜索框、添加按钮
<!-- 卡片试图区域 --><el-card><!-- 搜索与添加 --><el-row :gutter="20"><el-col :span="8"><el-input placeholder="请输入内容" v-model="queryInfo.query" clearable @clear="getUserList"><el-button slot="append" icon="el-icon-search" @click="getUserList" ></el-button></el-input></el-col><!-- 按钮 --><el-col :span="4"><el-button type="primary" @click="addDialogVisible = true">添加用户</el-button></el-col></el-row>
</el-card>
搜索功能的实现

将值利用绑定到queryInfo.query

// 获取用户列表的参数对象queryInfo: {query: '',// 当前的页数pagenum: 1,// 当前每页显示多少条数据pagesize: 2,
},
获取用户列表数据
<script>
export default {data() {return {//获取查询用户信息的参数queryInfo: {query: '',pagenum: 1,pagesize: 2},//保存请求回来的用户列表数据userList:[],total:0}},created() {this.getUserList()},methods: {async getUserList() {//发送请求获取用户列表数据const { res: data } = await this.$http.get('users', {params: this.queryInfo})//如果返回状态为异常状态则报错并返回if (res.meta.status !== 200)return this.$message.error('获取用户列表失败')//如果返回状态正常,将请求的数据保存在data中this.userList = res.data.users;this.total = res.data.total;}}
}
</script>
分页
  • element.js中导入组件Pagination
  • 更改组件中的绑定数据

@size-change: 监听pagesize改变的事件
@current-change: 监听页码值改变的事件
:current-page: 当前页
:page-sizes:一页的的信息条数
:page-size: 当前的页数
layout: 控制显示内容
:total:总共的信息条数

3.权限管理模块

权限列表

在这里插入图片描述

权限等级可以利用插槽v-if v-else-if来判断

     <el-table :data="list" style="width: 100%" border><el-table-column type="index" label="#" width="50"> </el-table-column><el-table-column prop="authName" label="权限名称" width="180"></el-table-column><el-table-column prop="path" label="路径" width="180"></el-table-column><el-table-column label="权限等级"><template #default="scope"><el-tag v-if="scope.row.level == 0">一等权限</el-tag><el-tag v-else-if="scope.row.level == 1" type="success">二级权限</el-tag><el-tag v-else-if="scope.row.level == 2" type="warning">三级权限</el-tag></template></el-table-column></el-table>
角色列表

在这里插入图片描述
角色列表页面一个重点就是利用了element ui中的 table表格展开行
在这里插入图片描述
分配权限也是利用利用了element ui中的 tree树形控件来完成的
在这里插入图片描述

4.商品管理

在商品管理页面又被分为了:商品分类 分类参数 商品列表三个页面

商品分类

在这个页面我们用了一个新的组件tree-table 树形表格
首先我们要下载

cnpm i vue-table-with-tree-grid --S

在main.js引入

import TreeTable from 'vue-table-with-tree-grid'
Vue.component('tree-table', TreeTable)

具体代码如下
在这里插入图片描述

在这里插入图片描述

5.订单管理

在这里插入图片描述

6.数据统计

使用echarts 绘制图标 echarts官网
echarts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表
然后通过lodsh的_.merge()来合并请求到的数据。

lodsh的安装 npm i --save lodash
引用import _ from "lodash"

`

打包

(懒得写了 以后再补)

http://www.hkea.cn/news/888453/

相关文章:

  • 新泰做网站菏泽seo
  • 网站建设排名东莞seo收费
  • 做网站前后端的发布流程自己如何制作网站
  • 网站营销与推广策略百度一下官网首页百度
  • 网站建设张世勇100个免费推广b站
  • 网络营销的常用工具百度关键词优化点击 教程
  • 公司网站要怎么做少儿编程培训机构排名前十
  • 一个好的网站是什么样的商家联盟营销方案
  • 网站解除域名绑定网站广告收费标准
  • 郑州的建设网站有哪些手续免费发布推广信息的平台有哪些
  • 手机做网站软件优化服务平台
  • 网站图片装修的热切图怎么做营销技巧培训
  • 可以上传图片的网站怎么做百度关键词点击
  • 泉州网站制作广州seo网站开发
  • cuntlove wordpressseo外链发布工具
  • 购买一个网站空间如何可以多个域名使用吗长沙网站建设服务
  • 天津市建设委员会网站上海网站制作开发
  • 扬中网站建设墨子学院seo
  • 分析电子商务网站建设需求教案青岛今天发生的重大新闻
  • 汕头模板开发建站百度发布信息怎么弄
  • 健身网站开发项目总结关键词筛选工具
  • 重庆网站建设零臻靠谱国内永久免费的云服务器
  • 软件库合集软件资料2024郑州百度快照优化
  • 房地产开发公司网站建设方案seo去哪里学
  • 做网站可以赚钱吗百度小说搜索风云排行榜
  • 做网站交接需要哪些权限网站seo视频教程
  • 在网站怎么做收款二维码刷移动关键词优化
  • 问信息奥赛题怎么做 去哪个网站互联网网络推广
  • b2c电子商务网站系统下载专业网站seo推广
  • 引流推广的方法seo诊断工具