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

龙华网站建设推广汕尾营销网站建设

龙华网站建设推广,汕尾营销网站建设,学院门户网站建设,基于搜索引擎的网站推广方式先说下思路,登录后跳转到基础页面, 每访问一个页面时,会进到路由守卫的方法 守卫进行身份验证,登录成功后才能跳转到静态路由外的页面,否则就重定向回login页面 登录后跳转到基础页面(因为基础页面包含了左…

先说下思路,登录后跳转到基础页面,
每访问一个页面时,会进到路由守卫的方法
守卫进行身份验证,登录成功后才能跳转到静态路由外的页面,否则就重定向回login页面
登录后跳转到基础页面(因为基础页面包含了左侧菜单栏,获取路由后可以更新菜单栏)。先判断是否已经有路由,防止每次进入守卫方法时重复获取路由,最后重定向到登录后的首页

一、创建静态路由,也就是登录页面和基础页面

登录后的页面是base,base里面包含了左侧菜单栏

import { createRouter, createWebHistory } from 'vue-router'const routes = [{path: '/base',name: 'Base',component: () => import("../views/base/BaseView.vue"),children: [],},{path: '/login',name: 'login',hidden: true,component: () => import('../views/Login.vue'),meta: {requireAuth: false // 是否需要身份验证}}
]const router = createRouter({history: createWebHistory(),routes
});export default router

二、在守卫方法中进行更新路由

我的路由信息只贴了3条,有一级的也有二级的。给大家做个参考
循环拿到路由信息,判断是一级还是二级,一级目录要新增children空数组,不然二级添加不进去

// 添加全局前置守卫
router.beforeEach((to, from, next) => {var requireAuth = trueconst token = localStorage.getItem('accessToken')let newT = router.options.routes[0];/* 需要在里面动态添加子路由的一个根组,插入的也是这个根组对象 */if (null != to.meta.requireAuth) {requireAuth = to.meta.requireAuth}if (requireAuth && !token) {next('/login')} else {if (to.path != "/login" && to.path != "/") {if (newT.children.length == 0) {//条件保护,防止全局路由守卫死循环执行。//返过来的路由信息const data = [{id: 1,parentId: 0,path: "/terminalList",name: "首页",hidden: false,component: "/terminal/TerminalList",},{id: 2,parentId: 0,path: "/one",name: "一级目录",hidden: false,component: "/base/RightView",},{id: 3,parentId: 2,path: "/terminalSearch",name: "1",hidden: false,component: "/search/TerminalSearch",},]for (let i = 0; i < data.length; i++) {if (data[i].parentId === 0) {newT.children.push({id: data[i].id,parentId: data[i].parentId,path: data[i].path,name: data[i].name,hidden: data[i].hidden,component: () => import('../views' + data[i].component + '.vue'),children: []}) //给子路由添加一条数据router.addRoute(newT);} else {var Pid = newT.children.length - 1let newR = router.options.routes[0].children[Pid];newR.children.push({id: data[i].id,parentId: data[i].parentId,path: data[i].path,name: data[i].name,hidden: data[i].hidden,component: () => import('../views' + data[i].component + '.vue'),}) //给子路由添加一条数据router.addRoute(newR);}}next({path: '/terminalList',replace: true});} else {next()}}else {next()}}
})

三、菜单栏展示,因为每个一级目录都有children。但首页菜单只有一个,没有下拉菜单

比如这样:
在这里插入图片描述

所以菜单展示的时候,判断下children的长度,没有值就只展示一个菜单

在这里插入图片描述

http://www.dtcms.com/wzjs/811037.html

相关文章:

  • 技术支持 海安网站建设宿州网络推广公司
  • 做网站卖大闸蟹只会网站开发能创业吗
  • 无锡电子商务网站制作软件程序开发公司
  • 开发网站建设的问卷调查首页关键词排名
  • MIUI官方网站开发版试玩网站建设
  • 建设网站公司兴田德润广东省最差的三座城市
  • 河南网站建设的详细策划seo优化工作内容
  • 高端网站鉴赏接单子做网站
  • 程序员怎么做网站赚钱如何建设网站论文文献
  • 苏州企业建站系统模板网站建设包括网页设计
  • 深圳一元购网站建设网络营销培训机构排名
  • 网站怎么增加页面收录wordpress 木马
  • 网赌网站怎么做免费空间备案
  • 做网站都需要哪些软硬件wordpress+站群插件
  • 曹县商城网站建设网络优化及服务的工作任务
  • 重慶网站开发深圳前十网站建设公司
  • 江苏大丰做网站百度招聘2022年最新招聘
  • psdw做网站wordpress小工具文本图标
  • 网站内链html编写新闻页面
  • 常州本地做网站的大公司做一个网站指定页面的推广
  • 广州网站营销推广设计wordpress获取文章时间
  • wap网站开发方案紫鸟超级浏览器官网下载
  • 微商的自己做网站叫什么名字网页制作三剑客指的是
  • 兰州网站建设网站建设响应式电商网站制作
  • 做网站专业公司电话qa wordpress
  • 利用ps制作网站的设计wordpress显示文章简介
  • 单位网站维护 网站建设岗位个人网站名称举例
  • 昌乐网站设计wordpress搜索框使用
  • 巴中微网站建设商城网站建设的优点
  • 网站建设好多钱关键词调整排名软件