首页 > 其他分享 >从零开始一个vue3前端项目day04-头部导航篇

从零开始一个vue3前端项目day04-头部导航篇

时间:2023-09-05 15:15:42浏览次数:45  
标签:name day04 item 从零开始 模块 vue3 initialArr 导航 路由

在实际开发项目中通常会把头部导航栏写成一个通用组件,这里来具体说一下实现思路

1:front-header组件就是我们的头部导航栏,路由我们已经配置好了,把每个导航的首页路径,配置成navList(包含name,path),这样就通过遍历navList就能写出一个首页导航组件

 2:导航的选中状态实现,不仅仅是切换到导航首页选中,也要判断当前模块的其它路由,有两种解决方案

 一:在配置路由时候,再meta里面设置一个字段来标识该路由属于哪个模块,然后再front-header组件,去到当前路由来判断,这样要一个一个配置也比较麻烦,所以推荐第二种方法

二:我们配置路由都是分模块配置的,可以把导航对应模块的 name 通过JS代码 取出来,然后在组件 取到当前路由名称去判断是否包含到对应模块routerNameList

//获取模块路由name集合
export const getRouteName = (router, nameArr) => {
  let initialArr = nameArr
  router.map((item) => {
    initialArr.push(item.name)
    if (item?.children?.length) {
      getRouteName(item.children, initialArr)
    }
    return false
  })
  return initialArr
}

 

 

 

标签:name,day04,item,从零开始,模块,vue3,initialArr,导航,路由
From: https://www.cnblogs.com/tanyy/p/17679376.html

相关文章

  • 从壹开始前后端开发【.Net6+Vue3】(二)前端框架
    项目名称:KeepGoing(继续前进)介绍工作后,学习的脚步一直停停走走,希望可以以此项目为基础,可以不断的迫使自己不断的学习以及成长将以Girvs框架为基础,从壹开始二次开发一个前后端管理框架在这过程中一步步去学习使用到的技术点,也同时会将在此过程中遇到的问题进行分享项目地址......
  • vue3+ts Axios封装—重复请求拦截
    创建好vue3项目1.安装Axios与ElementPlusAxios安装npminstallaxiosElementPlus安装官网入口:https://element-plus.gitee.io/zh-CN/npminstallelement-plus--saveElement主要用到信息提示与全屏加载动画2.在src目录下创建api文件夹和utils文件夹api......
  • vue3+vite使用require引用图片失效问题
    首先,这个问题的原因跟vue无关,是vite引用只支持import,require是隔壁webpack的引用方式,vite用自身的url可以用import.meta.url来拼装项目路径,如下:这个原理只不过是在发布的地址上去找对应图片,而且只会找项目中public文件夹下的图片资源,assets文件夹下的图片资源找不到(原因是publ......
  • vue3 使用vue-router 进行网页跳转以及获取问号后面的参数
    关键代码:constrouter=useRouter()constauthor='myname'router.push({name:'Edit',query:{author}})constroute=useRoute()constvalue=route.query.key详细步骤:0.Initialgitclonehttps://github.com/element-plus/element-plus-v......
  • Spring Boot(04):让你的Spring Boot应用“火力全开”,从零开始学习starter
    ......
  • 华为云Classroom赋能 | Devstar使应用开发无需从零开始
    华为云DevStar为开发者提供业界主流框架代码初始化能力,通过GUI、API、CLI等多种方式,将按模板生成框架代码的能力推送至用户桌面。同时基于华为云服务资源、成熟的DevOps开发工具链和面向多场景的众多开发模板,提供一站式创建代码仓、自动生成框架代码、创建编译构建、测试、部署等流......
  • 手把手教你vue3-ts-uniapp-vite创建多端小程序-3 统一ui,uni-ui库
    uni-ui官网地址https://uniapp.dcloud.net.cn/component/uniui/quickstart.html1.安装sass、sass-loadernpminstallsass-Dnpminstallsass-loader-D2.安装uni-uinpminstall@dcloudio/uni-ui3.配置easycom。在pages.json中配置"easycom":{"autoscan&q......
  • 手把手教你vue3-ts-uniapp-vite创建多端小程序-2 设置底部导航
    1.打开项目,打开pages.json,设置底部导航栏。注意pages中的path和tabBar中list中的path要一致{ "pages":[ { "path":"pages/index/index", "style":{ "navigationBarTitleText":"首页" } },{ "pa......
  • vue3入门_demo
    新建项目参考:Vuevscode创建vue项目流程【超详细】_vuevscode创建vue项目流程【超详细】_怎么用vscode写vue_一颗不甘坠落的流_一颗不甘坠落的流星的博客-CSDN博客项目结构:App.vue<template><Main></Main></template><script>importMainfrom"./components......
  • vue3中用户登陆会把用户跳转到登录页面,如何让用户登录完成后,跳回原来的页面上
    本地存储在Vue3中,你可以使用VueRouter和sessionStorage或localStorage来实现用户登录后跳回原来的页面。以下是一种常见的实现方式:在用户登录之前,记录当前页面的路由路径:在需要登录的页面组件中,在用户点击登录前,使用 this.$route.path 获取当前页面的路由路径,并将其存......