项目前奏

在脚手架里下载以下包,支持项目的开发

**路由守卫:**npm install vue-router

**Element-ui:**npm i element-ui -S

element的使用需要全局引入
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'Vue.use(ElementUI)

axios: npm i axios

样式重置

在main.js引入重置样式,作用全局,在开发的时候我们不需要默认的样式,所有重置我们自己写的样式

axios的基地址封装

基地址:http://localhost:3000,是访问服务器的基准路径,一般我们需要封装,方便维护和修改

三步曲:

1.引入axios

2.配置基准路径,使用axios.defaults.baseURL=‘基准地址’

3.默认暴露axios

//封装基准路径
//引入axios
import axios from 'axios'//配置基准路径
axios.defaults.baseURL = 'http://localhost:3000'//暴露基准路径
export default axios

创建登陆组件配置路由

一,模块化三步曲:

1.引入vue

2.引入路由模块

3.安装路由

二,创建路由对象

1,实例化路由

2.通过routes属性进行路由添加,routes是一个数组,数组里面写对象,对象里面写路由配置,

3.路由配置有name:路由名称,path:路由跳转路径,component路由跳转的组件路径

三暴露路由:需要默认暴露路由

//路由模块化
//引入vue
import Vue from 'vue'
//引入路由
import VueRouter from 'vue-router'
//安装路由
Vue.use(VueRouter)//创建路由对象
const router = new VueRouter({routes: [{name: 'login',path: '/login',//使用异步加载组件,只有用到了这个组件才会去加载这个组件component: () => import('@/views/login.vue')},{name: 'index',path: '/index',//使用异步加载组件,只有用到了这个组件才会去加载这个组件component: () => import('@/views/index.vue')}]
})//暴露路由
export default router

路由注入和映射

配置好路由需要在脚手架的main.js里面引入并注入才能生效,main.js是影响全局

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pvwmzOVZ-1604242425981)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201031173949690.png)]

在app.js里使用 路由映射路由,这里是项目网页展示的地方

登陆请求API

在apis/user.js中
//引入基准路径
import axios from '@/utils/myaxios.js'//登陆API
export const login = (data) => {return axios({url: '/login',method: 'post',data})
}

Element-ui框架的调用和api的使用

使用Eement框架的from表单完成对输入框的制作

**from表单中:**model绑定的属性就是整个用户的数据(用户名和密码)

rules:是验证的规则属性,可在data中定义验证规则,如下:

  <el-form:model="user":rules="rules"ref="loginForm"class="demo-ruleForm"><!-- 用户名框 --><el-form-item prop="username"><el-inputv-model="user.username"placeholder="请输入用户名"prefix-icon="el-icon-user-solid"></el-input></el-form-item><!-- 密码框 --><el-form-item prop="password"><el-inputv-model="user.password"type="password"placeholder="请输入密码"prefix-icon="el-icon-lock"></el-input></el-form-item><el-button type="primary" class="login-btn" @click="userlogin">登陆</el-button></el-form>

rules验证规则:在data中定义rules是一个对象,对象里面可以定义单个属性验证规则,通过prop获取验证规则,

required: true,是必须传一个参数,

message: 是提示信息,

trigger:是触发的时机(触发器),后面可以填写一个触发的事件类型(可写多个事件)

pattern:是填写验证的规则的模板填写处(例如正则表达式)

 data() {return {user: {username: "10086",password: "123",},//在data中定义校验规则rulesrules: {// 定义单个属性的验证规则username: [{ required: true, message: "请输入用户名", trigger: "blur" },{pattern: /^1\d{4}$|^1\d{10}$/,message: "请输入合法的手机号",trigger: "blur",},],password: [{ required: true, message: "请输入密码", trigger: "blur" }],},};},

验证用户输入的数据是否合法

登陆成功时将token存储到本地,以便日后使用

   userlogin() {this.$refs.loginForm.validate(async (valid) => {if (valid) {//发送登陆请求let res = await login(this.user);console.log(res);//判断验证成功if (res.data.message == "登录成功") {//1.将token存储到本地localStorage.setItem("heima_houtai", JSON.stringify(res.data.data));//2.跳转到首页this.$router.push({ path: "/index" });//3.给出登陆成功的提示this.$message({message: res.data.message,type: "success",});} else {//登陆失败的提示this.$message({message: res.data.message,type: "error",});}} else {//验证失败的提示this.$message({message: "用户输入不合法",type: "error",});}});},

添加导航守卫

后台管理除了登陆页不需要token其他页面都需要验证token才能进入,所以需要用到导航守卫去帮我们去验证

to和from:是从哪来到哪去在这两个属性中都会有记录

next:进行下一步,也可以进行路由跳转

需要判断本地是否有token取,如果不判断会报错,第二种方法是在JSON.parse(localStorage.getItem(‘heima_houtai’)||’{}).token加一个字符串对象就不会报错

router/index.js页面,添加导航守卫
router.beforeEach((to, from, next) => {//除了登陆页后台所有的页面都需要token验证if (to.name == 'login') {next()} else {if (localStorage.getItem('heima_houtai')) {let token = JSON.parse(localStorage.getItem('heima_houtai')).token//验证token是否携带,有就进行操作if (token) {//有token就进行操作next()} else {//没有token就重置到登陆页next({ path: '/login' })}} else {// 没有token可取的话也重置到登陆页next({ path: '/login' })}}})
       //有token就进行操作next()} else {//没有token就重置到登陆页next({ path: '/login' })}} else {// 没有token可取的话也重置到登陆页next({ path: '/login' })}}

})


头条管理后台(移动端后台)day01相关推荐

  1. 企业办公oa系统医药OA办公后台管理会议管理用户管理物料管理活动管理/Axure医药内部管理平台/web端后台管理系统原型/医药OA系统/权限管理

    作品介绍:企业办公oa系统&医药OA办公后台管理&会议管理&用户管理&物料管理&活动管理/Axure医药内部管理平台/web端后台管理系统原型/医药OA系统/权 ...

  2. Axure高保真学校后台管理作品管理教师管理资源审核学生管理家长管理权限管理资源管理web端后台模板管理教师审核统计分析教育后台管理系统学校后台管理系统校园后台管理系统

    作品介绍:Axure高保真学校后台管理&作品管理&教师管理&资源审核&学生管理&家长管理&权限管理&资源管理&web端后台模板管理&am ...

  3. 人力资源管理系统、OA、行政管理系统、考勤管理、资产管理、车辆管理、绩效管理、员工管理、招聘、入职、离职、转正、加班、调休、企业OA系统、axure原型、rp源文件、web端后台管理原型、高保真原型

    人力资源管理系统.OA.行政管理系统.考勤管理.资产管理.车辆管理.绩效管理.员工管理.招聘.入职.离职.转正.加班.调休.企业OA系统.axure原型.rp源文件.web端后台管理原型.高保真原型 ...

  4. 无人机综合管理系统/web端后台管理系统/设备管理/运维管理/维护管理/人员管理/维修保养/配件管理/保养管理/团队管理/axure后台管理原型/axure原型/web端后台管理原型/rp原型

    无人机综合管理系统/web端后台管理系统/设备管理/运维管理/维护管理/人员管理/维修保养/配件管理/保养管理/团队管理/axure后台管理原型/axure原型/web端后台管理原型/rp原型 axu ...

  5. Axure高保真web端后台管理系统/垃圾回收分类系统/垃圾回收高保真原型设计 /垃圾分类后台管理系统/垃圾回收分类平台//垃圾回收分类智慧管理系统/订单管理/财务管理/系统管理/库存管理/设备管理

    Axure高保真web端后台管理系统/垃圾回收分类系统/垃圾回收高保真原型设计 /垃圾分类后台管理系统/垃圾回收分类平台//垃圾回收分类智慧管理系统/订单管理/财务管理/系统管理/库存管理/设备管理 ...

  6. SCRM电商会员管理系统+导购端+商城app+小程序电商+移动端商城+电商web端后台管理+商城前后端系统+移动端商家端+电商app+购物车+订单+商城系统+电商看板+电商后台+优惠券+积分+会员

    作品介绍:SCRM电商会员管理系统+导购端+商城app/小程序 高保真SAAS实战web+移动端原型设计+电商web端后台管理+商城前后端系统+移动端商家端/用户端+电商用户数据大屏看板+订单管理+营 ...

  7. Axure高保真企业商城后台管理系统web端公司商城后台管理原型连锁门店管理系统交互组件点餐平台商家管理端后台库存管理财务管理系统管理接单管理

    作品介绍:Axure高保真企业商城后台管理系统&web端公司商城后台管理原型&连锁门店管理系统交互组件&点餐平台商家管理端后台&库存管理&财务管理&系统 ...

  8. Axure 经典实例高保真原型下载(Axure高保真酒店管理交互组件连锁酒店erp酒店企业web端后台管理财务管理会员管理网销管理报表管理))

    作品介绍:Axure高保真酒店管理交互组件&连锁酒店erp&酒店企业web端后台管理&财务管理&会员管理&网销管理&报表管理 Axure原型演示及下载地 ...

  9. 企业办公oa系统、医药OA办公后台管理、会议管理、用户管理、物料管理、活动管理、日常拜访、Axure医药内部管理平台、web端后台管理系统原型、医药OA系统、权限管理、Axure原型、rp原型

    企业办公oa系统.医药OA办公后台管理.会议管理.用户管理.物料管理.活动管理.Axure医药内部管理平台.web端后台管理系统原型.医药OA系统.权限管理 Axure原型演示及下载地址:https: ...

最新文章

  1. 46 岁美国华裔“鞋王”意外去世,25 岁创业成亿万富翁
  2. 【Python-ML】SKlearn库密度聚类DBSCAN模型
  3. 招聘│微软云计算英雄帖来了,快接招!
  4. 本地分发_2020年分发Python应用程序的12个热门途径
  5. 1.5.2 在IIS上配置ASP.NET(转)
  6. sqlmap --os-shell反制小思路
  7. binder-swagger-java v0.5.0,Swagger API 框架
  8. css 宽高最大值最小值 0303
  9. ARM Cortex-M0 原理与应用实践
  10. java 不存在就创建,java怎么实现判断文件是否存在,不存在就创建的方法
  11. 远程桌面命令是什么 如何使用命令连接远程桌面
  12. linux 内核配置详解
  13. 作业三-读书app原型设计
  14. 关于烂代码的那些事(下)
  15. oracle时间查询语句
  16. select中选中option的方法
  17. Redis主从架构 | 黑马Redis高级篇
  18. 怎么判断机械表上满弦_腕表冷知识,知道两个以上算我输!
  19. 星际争霸汉化java_星际争霸2地图编辑器:银河编辑器语言类似Java/C/PHP
  20. dnf鹰犬boss机器人_鹰犬boss_兰蒂卢斯和皇女_兰蒂卢斯的鹰犬-Guide信息网

热门文章

  1. OPPO Find X兰博基尼版到底有多受欢迎?网友:就是加价也要买
  2. 高通WLAN框架学习(31)-- Power save
  3. 在微信内一次报修联想电脑的全过程
  4. Oracle入门之表管理
  5. Cda Level1学习轨迹
  6. 整理一站式积分兑换商城框架方案
  7. QT编程 之 为Label添加点击事件
  8. 美食主题网页设计 学生HTML个人网页作业作品下载 个人主页博客网页设计制作 大学生个人网站作业模板 dreamweaver简单个人网页制作
  9. bug 回忆录(三)
  10. Java对HTTP2的支持