vue项目1-pizza点餐系统5-全局守卫
一、导航守卫描述
当问我们点击主页、菜单等非登陆和注册按钮都会提示先登陆然后跳转到登陆界面。
1、在main.js中引入全局守卫
//全局守卫
//to是要进入那个路由,from是从那个路由出来,next是个函数,是否展示路由界面
router.beforeEach((to,from,next) =>{
// alert("还没有登录,请先登录");
// next();
//判断store.gettes.isLogin === false 这是vuex中的内容 //判断跳转的路由是否是登陆和注册,如果是就显示路由界面,不是就跳转到登陆界面
if(to.path == '/login' || to.path == '/register'){
next();
}else{
alert("还没有登录,请先登录");
next("/login");
}
})
2、路由独享守卫
在index.js中的需要加守卫配置中,加入
{path: '/admin', name: 'adminLink', component: Admin,beforeEnter:(to,from,next) => {
//路由独享守卫
alert("得登陆状态,不能访问此页面");
next(false);//false不能进入管理界面,空可以进入管理界面
}},
3、组件内守卫
在需要的设置的组件中,例如餐单组件中。
<script>
export default {
//组件内守卫,next回调,拿不到data属性,跟执行顺序有关
data(){
return{
name:"Henry"
}
},
// beforeRouteEnter:(to,from,next)=>{
// // alert("Hello "+this.name);//结果是:Hello undefined 因为在执行beforeRouteEnter方法时并没有把data数据渲染出来
// //next()方法中提供了回调
// next(vm =>{
// alert("Hello "+vm.name);
// })
// }
beforeRouteLeave(to,from,next){
//离开时弹出“确定离开吗”,确定就离开
if(confirm("确定离开吗")==true){
next()
}else{
next(false)
}
}
}
</script>
vue项目1-pizza点餐系统5-全局守卫的更多相关文章
- 一 创建一个springboot项目之(微信点餐系统的设计与开发)
第一步:收到项目需求,进行数据库表的设计. 1.角色的划分: 卖家: 订单,类目 买家: 商品列表 2.功能模块的划分: 商品:商品列表 订单: 订单创建,订单查询,订单取消 类目:基于管理的功 ...
- vue项目1-pizza点餐系统1-利用bootstrap4制作导航栏
初次接触Bootstrap,简单谈一下理解.bootstrap是一个简单有强悍的前端框架,它是一个开源项目.当我们需要一些样式等,可以了解bootstrap的相关class.标签名称等所代表的意思,然 ...
- 基于SpringBoot前后端分离的点餐系统
基于SpringBoot前后端分离的点餐系统 开发环境:主要采用Spring boot框架和小程序开发 项目简介:点餐系统,分成卖家端和买家端.买家端使用微信小程序开发,实现扫码点餐.浏览菜单.下单. ...
- vue项目、路由
目录 Vue项目创建 pycharm配置并启动vue项目 vue项目目录结构分析 js原型补充 vue项目生命周期 页面组件 配置自定义全局样式 路由逻辑跳转 路由重定向 组件的生命周期钩子 路由传参 ...
- 快速创建 Vue 项目
转载:https://www.jianshu.com/p/c7df292915e7 为了便于 Vue 项目的管理, Vue 团队官方开发了 vue-cli 工具. 本文将带您使用 vue-cli 快速 ...
- [课程设计]Scrum 2.0 多鱼点餐系统开发进度(第二阶段项目构思与任务规划)
[课程设计]Scrum 2.0 多鱼点餐系统开发进度 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB ...
- [课程设计]Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划)
Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到 ...
- Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划)
Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到 ...
- DoNet开源项目-基于Amaze UI的点餐系统
帮朋友做的点餐系统,主要是为了让顾客在餐桌上,使用微信扫描二维码,就可以直接点菜,吃完使用微信付款. 系统演示地址,账户名和密码均为:admin.(请不要删除admin用户) GitHub Clone ...
随机推荐
- 【Leetcode】2的幂(整数的二进制形式,与运算)
class Solution { public: bool isPowerOfTwo(int n) { ) return false; )) == ; } }; 注: 1) 2的幂函数,其y值大于0: ...
- 在线前端 JS 或 HTML 或 CSS 编写 Demo 处 JSbin 与 jsFiddle 比较
JSBin 该编辑器的特点是编写可直接编写 HTML.CSS.JavaScript 并且可以在 output 中实时观察编写效果:可设置自动运行 JavasScript 代码,其中最大的好处是有一个 ...
- BZOJ 1859 Luogu P2589 [ZJOI2006]碗的叠放 (计算几何)
woc, 13年前的ZJOI就这么毒瘤的嘛... 题目链接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=1859 (luogu)ht ...
- 一个优雅的图片裁剪插件vue-cropper
github: https://github.com/xyxiao001/vue-cropper
- 学习日记21、IE下的Ajax需要注意的地方
上面这张图片我是封装了一个easyui下拉框,红框出则是动态传入的json数据,这串代码在google下运行不会有任何问题,但是在IE下运行则会提示缺少:,这是因为IE只识别json格式的数据,所以这 ...
- ORA-01034、ORA-27101、ORA-00119错误
ORA-01034ORA-27101Linux-x86_64 Error: 2:No such file or directory. 或者是 ORA-00119: invalid specificat ...
- [LeetCode]-algorithms-Reverse Integer
Reverse digits of an integer. If the integer's last digit is 0, what should the output be? ie, cases ...
- Found duplicate classes/resources
很可能是多个三方依赖重复了,依赖个插件,这个插件能查找出依赖关系, duplicate-finder-maven-plugin 使用命令显示 mvn dependency:tree [INFO] \- ...
- Java中String类中常用的方法
1.字符串与字符数组的转换 用toCharArray()方法将字符串变为字符数组 String str = "abcdef"; char c[] = str.tocharArray ...
- CentOS7--删除virbr0
https://blog.csdn.net/aienjoy/article/details/78994128