【vue】 router.beforeEach
import store from '@/store'
const Vue = require('vue')
const Router = require('vue-router')
Vue.use(Router) const router = new Router({
scrollBehavior (to, from, savedPosition) {
return {x: 0, y: 0}
},
linkActiveClass: 'is-active',
mode: 'history',
routes: [
{
path: '/',
name: 'index',
component: resolve => require([`@/views/index.vue`], resolve)
},
{
path: '/process',
name: 'process',
meta: {
role: 1,
crumbName: ['管理中心'],
crumbPath: []
},
component: resolve => require([`@/views/process.vue`], resolve)
},
{
path: '*',
redirect: '/'
}
]
})
router.beforeEach(async (to, from, next) => {
let loginUserName = store.getters.loginUserName
let loginUserRole = store.getters.loginUserRole
let goNext = (to, from, next, loginUserRole) => {
if (to.meta.role !== undefined && loginUserRole < to.meta.role) {
...(想要做的操作)
next()
} else {
next()
}
}
try {
if (!loginUserName) { // 先判断是否已登录
await store.dispatch('getUserInfo')
// await store.dispatch('getUserRole')
let loginUserName = store.getters.loginUserName
let loginUserRole = store.getters.loginUserRole
if (loginUserName) {
goNext(to, from, next, loginUserRole)
}
} else {
goNext(to, from, next, loginUserRole)
}
} catch (err) {}
}) export default router
【vue】 router.beforeEach的更多相关文章
- 【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据
前言: 之前写过一篇文章<在不同场景下Vue组件间的数据交流>,但现在来看,其中关于“父子组件通信”的介绍仍有诸多缺漏或者不当之处, 正好这几天学习了关于用sync修饰符做父子组件数据双向 ...
- 【vue】移动端demo资料
http://imzjh.com/inew/#/(移动端demo) https://github.com/liangxiaojuan/eleme(饿了么git地址) https://github.co ...
- 【vue】MongoDB+Nodejs+express+Vue后台管理项目Demo
¶项目分析 一个完整的网站服务架构,包括: 1.web frame ---这里应用express框架 2.web server ---这里应用nodejs 3.Database ---这里 ...
- 【vue】本地开发mock数据支持
项目离不开数据渲染的支持,为本地开发配置 数据 支持. (一)方式一:安装JSON Server搭建mock数据的服务器 json Server 是一个创建 伪RESTful服务器的工具. 配置流程 ...
- 【vue】npm run mock & npm run dev 无法同时运行的解决
[关于系统,没注明的都是windows系统,若以后用的是mac系统则会另外备注] 当项目数据是通过mock搭建而成(参照:[vue]本地开发mock数据支持)时,运行mock服务器和项目的命令 就参照 ...
- 【VUE】自定义组件
[VUE]自定义组件 转载: ============================================ ======================================== ...
- 【VUE】使用问题记录
[VUE]使用问题记录 ===================================================================== 1.Vue.nextTick 修改数 ...
- 【VUE】数组
[VUE]常用函数 转载:https://www.cnblogs.com/yangchongxing/p/10637087.html 目录 ============================== ...
- 【vue】生成接口模拟数据
目录 方案一:自定义模拟数据 Step1 创建json文件 Step2 在 vue.config.js 中配置 Step3 在组件中使用 (方式一) Step3 封装api (方式二) Step4 在 ...
随机推荐
- web做题记录
2020.1.19 南邮ctf 签到题 题目:key在哪里? 在火狐浏览器中右键选择打开查看源代码,在源代码可以看到如下 因为是第一次做这个题,不知道提交啥,我先提交了“admiaanaaaaaaaa ...
- MyEclipse CI 2019.4 完美激活版(含离线包+激活工具+安装教程)
ps:MyEclipse目前已更新至2019.12.5,但是目前还没有有效的激活方式,本次文章以2019.4为例; 该文章使用离线安装的方式进行安装,在线安装不保证不会出现各类小问题,离线安装包及激活 ...
- Spark学习之路 (一)Spark初识 [转]
官网介绍 什么是Spark 官网地址:http://spark.apache.org/ Apache Spark™是用于大规模数据处理的统一分析引擎. 从右侧最后一条新闻看,Spark也用于AI人工智 ...
- 《深入理解java虚拟机》读书笔记七——第八章
第八章 虚拟机字节码执行引擎 1.运行时栈帧结构 概述: 栈帧是用于支持虚拟机进行方法调用的和方法执行的数据结构,他是虚拟机运行时数据区中的虚拟机栈的栈元素,栈帧存储了方法的局部变量,操作数栈,动态连 ...
- sqlserver删除所有表、视图、存储过程
declare proccur cursor for select [name] from sysobjects where type='P' declare @procnam ...
- 远程执行命令_python
一.远程执行命令模块subprocess Python可以使用subprocess下的Popen类中的封装的方法来执行命令 构造方法 popen() 创建popen类的实例化对象 ··· obj = ...
- linux 安装java jdk
1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version "1.8.0_102" O ...
- nvm —— Node版本管理工具
nvm下载 下载地址 下载nvm-setup.zip文件 nvm安装 1.以管理员身份运行install.cmd文件,设置文件路径 root: C:\Users\Administrator\AppDa ...
- 使用VS2017创建EF框架实例
本文例子中使用环境:vs2017,sql server 2008 一,创建EF项目 1,解决方案添加.Net Framework类库项目,在新建的项目下新建项:data->ADO.NET实体数据 ...
- python之路模块简介及模块导入
================================添加sys.path路径================================================== ===== ...