P6-Vue3后台管理系统-构建业务组件连通公共组件

1.概述

这篇文章我们将创建业务模块,并且与公共组件进行连通。

2.构建业务模块

2.1.构建Home

2.2.构建VideoManage

2.3.构建UserManage

2.4.构建Other

3.构建业务组件路由

在router下的index.js文件配置业务路由映射关系表

import Vue from 'vue'
import VueRouter from 'vue-router'Vue.use(VueRouter)// 导入组件
const Main = () => import('@/views/Main.vue')
const Home = () => import('@/views/Home/Home')
const VideoManage = () => import('@/views/VideoManage/VideoManage')
const UserManage = () => import('@/views/UserManage/UserManage')
const PageOne = () => import('@/views/Other/PageOne')
const PageTwo = () => import('@/views/Other/PageTwo')// 配置路由映射关系表
const routes = [{path: '/',component: Main,// 配置子路由,他们都是Main的子路由children: [{path: '/',name: 'home',component: Home},{path: '/video',name: 'video',component: VideoManage},{path: '/user',name: 'user',component: UserManage},{path: '/page1',name: 'page1',component: PageOne},{path: '/page2',name: 'page2',component: PageTwo}]}
]const router = new VueRouter({routes
})export default router

4.连通公共组件

4.1.Main.vue组件展示业务组件路由

4.2.配置路由跳转

在CommonAside组件中通过监听用户点击的导航栏菜单事件,触发绑定的方法,在该方法中实现路由跳转到指定组件页面

4.3.解决重复点击一个菜单路由报错

  • 同一个页面路由重复跳转报错信息
  • 解决办法降低router版本
# 进入项目根路径
cd vue-manage-system
# router降为3.0版本
yarn add vue-router@3.0 -S
  • 同一个页面路由重复跳转没有报错

4.4.连通Tag标签

  • 查看Element官网Tag提供的事件,我们给这个事件绑定一个方法实现连通Tag标签
  • CommonTab组件为事件绑定方法
  • CommonTab组件完整代码
<template><div class="tabs"><!-- :closable="tag.name !== 'home'" tag标签为home时不显示关闭按钮 --><el-tagsize="small":key="tag.name"v-for="tag in tags":closable="tag.name !== 'home'":disable-transitions="false"@click="changeMenu(tag)"@close="handleClose(tag)">{{ tag.label }}</el-tag></div>
</template><script>
// 引入vuex模块
import { mapMutations, mapState } from 'vuex'
export default {computed: {// 使用vuex中state管理的tabsList数组对象数据...mapState({tags: state => state.tab.tabsList})},data() {return {dynamicTags: ['标签一', '标签二', '标签三'],inputVisible: false,inputValue: ''}},methods: {...mapMutations({close: 'closeTab'}),// 通过事件绑定方法,当用户点击关闭时将tab作为参数传递给close方法,通过close方法调用vuex中的closeTab方法handleClose(tag) {this.close(tag)},// Tag标签与业务组件路由跳转连通changeMenu(item) {// 点击Tag标签跳转到对应业务组件的路由页面this.$router.push({ name: item.name })// 将用户点击导航的菜单传递给Vuex的selectMenu方法,实现CommonHeader组件面包屑展示菜单数据联动。this.$store.commit('selectMenu', item)}}
}
</script><style lang="scss" scoped>
// 设置tag标签样式
.tabs {padding: 20px;.el-tag {margin-right: 15px;}
}
</style>
  • CommonTab组件标签路由跳转效果

P6-Vue3后台管理系统-构建业务组件连通公共组件相关推荐

  1. vue3后台管理系统

    vue3后台管理系统 vite构建vue3项目 项目中其他需求的引入 1. element-plus引入 2. vue3引入路由 3. element-plus图标的引入和使用 静态引入图标 动态引入 ...

  2. vue3后台管理系统(https://github.com/noob-Jp/my-admin-vue3)

    # my-admin-vue3 线上预览地址:vue3后台管理系统 本项目是我第一次写vue3,vue2已经学了很长时间,早就想开始接触vue3,通过b站和github上项目的介绍我了解到好多成熟的v ...

  3. 开箱即用,这些 Vue3 后台管理系统模板绝对让你爽歪歪!

    原文链接:Vue3 后台管理系统模板推荐. 之前写了一篇关于 Vue2 的后台管理系统模板的推荐,详情请见 Vue后台管理系统模板推荐. Vue3 在今年2月份已成为新的默认版本,本文收集了一些 Vu ...

  4. 基于nuxt和iview搭建OM后台管理系统实践(2)-quill富文本组件的封装

    目录结构 这是<基于nuxt和iview搭建OM后台管理系统实践>这一个系列文章的目录,大致思路如下: 简要介绍OM后台管理系统,以及开发环境 自行开发的公共组件(富文本.地图.上传)介绍 ...

  5. Vue3后台管理系统模板推荐

    文章目录 @[TOC](文章目录) 1.Vue-Vben-Admin 2.vue-manage-system 1.Vue-Vben-Admin Vue-Vben-Admin(github上的标星数为1 ...

  6. React后台管理系统-商品列表搜索框listSearch组件

    1.商品列表搜索框 2.搜索框页面的结构为 <div className="row search-wrap">               <div classN ...

  7. Vue3后台管理系统(四)SVG图标

    目录 一.安装 vite-plugin-svg-icons 二.创建图标文件夹 三.main.ts 引入注册脚本 四.vite.config.ts 插件配置 五.TypeScript支持 六.组件封装 ...

  8. 用 Vite+Vue3+Ts 搭建通用后台管理系统

    大厂技术  高级前端  Node进阶 点击上方 程序员成长指北,关注公众号 回复1,加入高级Node交流群 通用后台管理系统整体架构方案(Vue) 项目创建,脚手架的选择(vite or vue-cl ...

  9. 用vite+Vue3+ts搭建通用后台管理系统

    点击上方关注 前端技术江湖,一起学习,天天进步 通用后台管理系统整体架构方案(Vue) 项目创建,脚手架的选择(vite or vue-cli) vue-cli基于webpack封装,生态非常强大,可 ...

最新文章

  1. 微生物预测年龄,皮肤比肠道更准确
  2. c语言 hello world代码_C语言基础
  3. minicom的使用,发送AT指令
  4. 分布式应用框架Akka快速入门
  5. 基于spring boot 的ssm项目的简单配置
  6. 程序员解决20年前的加密问题
  7. 一条命令扫描局域网所以IP地址和MAC地址
  8. 【Clickhouse】CLICKHOUSE SQL文件等常用语句
  9. Linux磁盘管理--RAID原理
  10. 推荐几个非常有用的工具
  11. php查重,知网查重时检测php之类的源码吗?【干货分享】
  12. 深圳医保社保的使用方法
  13. 神奇的量子世界——量子纠缠(Matlab实现)
  14. 可以这样理解 TIM_INIT(arr,psc)重装载值和分频值
  15. 用docker跑机器学习环境
  16. HyperLynx仿真(一)LineSim简单介绍
  17. 辽宁师范大学计算机科学技术与,王相海 - 辽宁师范大学 - 计算机与信息技术学院...
  18. 05.敬业、牺牲与奋斗
  19. NEM Venture 戰略投資 Cyclebit,開啟 Cyclebit Token 接受在線和店內加密貨幣的公司
  20. Cookie由谁设置、怎么设置、有什么内容?

热门文章

  1. JDK17的下载安装与配置(详细教程)
  2. python是解释性语言!
  3. quartz - 宕机后的设置
  4. 基线校正——多项式拟合
  5. 【Python】python之subprocess模块详解
  6. MyEclipse创建jsp项目
  7. c语言实验设备管理系统设计作业,C语言课程设计实验设备管理系统设计
  8. Python基础操作_字典的遍历
  9. php 提取图片的特征,让机器“看见”:图像数据的特征提取方法
  10. 「需求广场」需求词更新明细(七)