写在router/index.js文件内

//导航守卫,前置处理
router.beforeEach((to, from, next) => {let isAuthenticated = !!localStorage.getItem('userInfo');console.log('isAuthenticated', isAuthenticated);console.log('1', localStorage.getItem('userInfo'));console.log('2', !localStorage.getItem('userInfo'));console.log('3', !!localStorage.getItem('userInfo'));// 如果路由要跳转到除了登录和注册的界面的话就判断是否已经登录,如果没有登录就强制跳到登录界面if (to.path !== '/login' && to.path !== '/register' && !isAuthenticated) {next({ name: 'Login' })Message({message: '请先登录!',type: "warning",})} else {next()}
})

双感叹号作用
*一个感叹号:可以将变量转换成boolean类型,null,undefiend和空字符串去返都为true,其余都为false

*两个感叹号:常用于做类型判断,判断是否存在,仅仅打印对象,无法判断是否存在。是对一个!的布尔类型去反

*三个感叹号:没什么意义,和一个感叹号效果是一样的


登录注册简单demo代码
技术栈:vue2+elementui+axios
只有登录注册简单页面,未和接口联通
github仓库地址:login-demo


参考链接:
1.js双感叹号作用
Javascript中!!(两个感叹号,双感叹号)的含义

Vue 实现登录注册功能(前后端分离完整案例)

22/10/08 vue2项目,登录注册路由守卫相关推荐

  1. JavaWeb项目(登录注册页面)全过程详细总结

    文章目录 JavaWeb项目(登录注册页面)全过程总结 一.环境准备与开发工具 二.创建 JavaWeb 项目2.1 新建Dynamic Web Project项目2.2 创建前端页面2.2.1 登录 ...

  2. 美团项目 --- 登录注册3

    ❤ 项目源码 ❤ GitHub地址:https://github.com/Umbrella001/mtapp 文章目录 一.server文件夹设计 1.1 开始配置数据库mongodb和对象模型管理工 ...

  3. SMM项目登录注册简单实现

    Day03-SMM项目登录注册简单实现 该项目主要是在idea中建立maven web app项目,使用ssm,即利用Spring SpringMVC Mybatis整合项目. 第一阶段:依赖和SSM ...

  4. C#仿qq窗体项目 登录 注册 聊天 点赞 更换头像 添加好友 删除好友 基础功能

    C#仿qq窗体项目 登录 注册 聊天 点赞 更换头像 添加好友 删除好友 基础功能这里写自定义目录标题 话不多说直接上图片: 学校第一学期结业项目 采用环境: sqlserver2008 vs2010 ...

  5. 前端基础第四天项目 社交媒体黑马头条项目-登录注册和个人中心

    一.项目初始化 目标 能使用 Vue CLI 创建项目 了解 Vant 组件库的导入方式 掌握制作使用字体图标的方式 掌握如何在 Vue 项目中处理 REM 适配 理解 axios 请求模块的封装 使 ...

  6. 美食杰项目-登录注册

    纯代码 在router的index.js中 import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) import { ...

  7. Web项目 - 登录注册业务逻辑

    注册业务 登录注册业务 对于企业当中,一般项目都有登录注册功能[这个业务很重要] 当然有一些项目不需要注册,后台管理系统项目,一般不需要注册 在尚品汇项目中 登录与注册的静态组件(图片问题会报错) 我 ...

  8. springboot项目登录+注册

    springboot 整合 mybatis + thymeleaf 登录注册 学习网址 springboot+jsp https://blog.csdn.net/qq_40205116/article ...

  9. vue2 和 vue3 的 路由守卫

    vue2 路由守卫: vue-router 路由实现: 路由就是用来跟后端服务器进行交互的一种方式,通过不同的路径,来请求不同的资源,请求不同的页面是路由的其中一种功能. 首先知道有3个参数 to , ...

最新文章

  1. Functor、Applicative 和 Monad x
  2. 图文详解Java环境变量配置方法
  3. java内存泄露问题
  4. a说b说谎b说c说谎说d说_说谎的眼睛及其同伙
  5. C#ListView控件添加复选框并获取选中的数目
  6. oracle12c ora 12547,Oracle 12c DBCA出现PRCR-1079 ORA-12547 CRS-5017
  7. gtp怎么安装系统_UEFI+GTP模式下使用GHO文件安装WIN7或WIN8图文教程
  8. 找回 linux root密码的几种方法
  9. 电子合同的风险有哪些?小心别被坑了
  10. 证件照处理:一寸照片换底色
  11. scala的linearization
  12. 码医自学法V2.2(附名老中医)
  13. 数仓(四)数据仓库分层
  14. 坑爹公司大盘点 --- 转自拉钩
  15. 使用Tushare接口做中证500基差图
  16. 027 Rust死灵书之Vec内存分配
  17. 我放弃了年薪20万offer,挑战自动化测试(一)
  18. 129、交换机如何设置控制IP地址冲突故障
  19. 【redis】-redis单线程模型讲解
  20. 有趣的游戏编程学习网站

热门文章

  1. 华为python自动化测试框架_10个自动化测试框架,测试工程师用起来
  2. 智能时代——大数据与智能革命重新定义未来
  3. AdminLTE3 Table插件
  4. 学会做arduino交通灯
  5. 第十三章 使用动态SQL(五)
  6. Java项目不挂断运行,运行jar包
  7. 敏捷集团老板怎么样?和大家分享一下我在敏捷的工作经历
  8. NCR3网络技术速成笔记(1)
  9. 迪文串口屏(T5L2 DGUS II)开发 -- 入门
  10. (图)不可错过的好看好玩的射箭体感游戏