(十)VUE侧边菜单栏导航–基于SpringBoot+MySQL+Vue+ElementUI+Mybatis前后端分离面向小白管理系统搭建
新手做毕设—后台管理系统
- 任务九 axios前后端跨域数据交互[https://blog.csdn.net/wdyan297/article/details/128742035?spm=1001.2014.3001.5501](https://blog.csdn.net/wdyan297/article/details/128742035?spm=1001.2014.3001.5501)
- 任务十 VUE侧边菜单栏导航
-
- 一、侧边栏优化为组件Aside
-
- 1. 新建Aside .vue组件
- 2.引入Aside组件
- 3.使用Aside组件
- 4. 修改路由
- 5. 运行项目
- 二、头部优化为组件Header
-
- 1.新建Header .vue组件
- 2. 引入Header组件
- 3. 使用Header组件
- 4. 运行项目
- 三、页面主体升级为User组件
-
- 1.新建user.vue组件
- 2. Manage.vue中通过使用子路由的方式访问User.vue
- 3.修改路由index.js文件
- 4.运行项目
- 四、侧边栏完善菜单项及超链接
-
- 1. 修改Aside组件
- 2. 运行项目
- 3. 新增Home.vue组件
- 4. 修改路由,打开网址直接到需要的页面
- 5. 运行项目
- 任务总结
任务九 axios前后端跨域数据交互https://blog.csdn.net/wdyan297/article/details/128742035?spm=1001.2014.3001.5501
任务十 VUE侧边菜单栏导航
任务九 使用axios实现前后端跨域数据交互。并且继续熟悉使用Element UI组件,完成用户数据增删改查。目前我们的前端页面还没有变,仍然沿用最初的home页面,本次任务中我们将进行VUE路由设计,主要对侧边栏进行维护,实现页面导航,然后将home页面改为Manage.vue。把用户管理页面进行组件化设计。通过本次任务,大家能够:
(1)理解并逐步掌握VUE组件的含义;
(2)深入理解VUE单页面应用;
(3)初步掌握VUE路由的概念和使用方法。
一、侧边栏优化为组件Aside
为了与整个项目的完整与合理,将前面的Home.vue文件改名为Manage.vue。
1. 新建Aside .vue组件
在components中新建一个Aside .vue组件,将与 之间的内容全部放到Aside.vue组件中。
特别注意: 这里是将原来的剪切后粘贴到Aside组件中。等一会只需要引用组件就可以了。
Aside .vue组件代码如下:
后台管理系统
导航一
分组一
选项1
选项2
选项3
选项4
选项4-1
导航二
分组一
选项1
选项2
选项3
选项4
选项4-1
导航三
分组一
选项1
选项2
选项3
选项4
选项4-1
export default {
//输出组件
name: "Aside"
}
特别注意: 注意输出组件。
2.引入Aside组件
在Manage.vue中引入Aside组件。
// @ is an alias to /src
import Aside from '@/components/Aside.vue'
export default {
name: 'Manage',
components:{
Aside
},
// 以下中代码不变,略。

3.使用Aside组件
在Manage.vue中使用组件。
4. 修改路由
因为Home组件的文件名进行了更换,这时候直接运行会报错,因为路由仍然在找原来的页面,所以需要修改路由。

5. 运行项目
如果项目运行不出数据,特别注意是否前面修改的每个文件都进行了保存。
二、头部优化为组件Header
1.新建Header .vue组件
在components中新建一个Header .vue组件,将与 之间的内容全部放到Header .vue组件中。
注意:为了方便后面传参学习,这里用户名“王小虎”我们采用传参的方式。
{{name}}
个人信息
退出
export default {
name: "Header",
props: {
name: String
}
}
2. 引入Header组件
在Manage.vue中引入Header组件。
// @ is an alias to /src
import Aside from '@/components/Aside.vue'
import Header from '@/components/Header.vue'
export default {
name: 'Manage',
components:{
Aside,
Header
},
以下中代码不变,略。

3. 使用Header组件
在Manage.vue中使用
4. 运行项目

三、页面主体升级为User组件
1.新建user.vue组件
在views中新建一个user.vue组件,将与 之间的内容全部放到User.vue组件中。
注意: 这里需要添加一个因为vue只认一个根
注意 在这里把需要的data、created以及methods全部拷贝到User组件,它们是一起使用的。
2. Manage.vue中通过使用子路由的方式访问User.vue
在Manage.vue中通过使用子路由的方式访问User.vue。因为我们不只是访问一个User页面,还要访问其他的页面(组件),这些组件都是在 标签中显示。
<!--当前页面的子路由将在中展示-->
3.修改路由index.js文件
修改路由index.js文件,将User组件引入,并且作为子路由添加。
import Vue from 'vue'
import VueRouter from 'vue-router'
import Manage from '../views/Manage.vue'
import User from '../views/User.vue'
Vue.use(VueRouter)
const routes = [
{
path: '/',
name: 'home',
component: Manage,
children:[
{
path: 'user',
name: 'User',
component: User
}
]
},
{
path: '/about',
name: 'about',
// route level code-splitting
// this generates a separate chunk (about.[hash].js) for this route
// which is lazy-loaded when the route is visited.
component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
}
]
const router = new VueRouter({
mode: 'history',
base: process.env.BASE_URL,
routes
})
export default router

4.运行项目
运行项目,注意路径需要加/user。

四、侧边栏完善菜单项及超链接
目前我们还没有将菜单与登录用户做对应关系,也就是说还没有做用户权限等内容,我们先安装目前的逻辑关系进行Element菜单栏的一级、二级菜单导航逻辑认识。
1. 修改Aside组件
根据实际情况,修改Aside组件,目前只有一个用户管理页面。
后台管理系统
主页
系统管理
用户管理
因为只有一个页面,default-openeds=”[]”是默认打开设置,可以根据需要,默认打开某一个一级菜单,只需要填写index值即可。
2. 运行项目

3. 新增Home.vue组件
新增一个Home.vue组件,暂时作为系统登录后的主页面。
这是一个主页
export default {
name:"Home"
}
4. 修改路由,打开网址直接到需要的页面
修改路由,利用重定向,使得http://localhost:8081/重定向到http://localhost:8081/home。
const routes = [
{
path: '/',
name: 'Manage',
redirect: '/home',
component: Manage,
children:[
{
path: 'user',
name: 'User',
component: User
},
{
path: 'home',
name: 'Home',
// route level code-splitting
// this generates a separate chunk (about.[hash].js) for this route
// which is lazy-loaded when the route is visited.
component: () => import(/* webpackChunkName: "about" */ '../views/Home.vue')
}
]
}
]
5. 运行项目
注意:如果有运行出来是下图这样的同学们。

一方面,需要在Manage组件中看你的el-container有没有设置到高度为100%的样式。 app”>
#app{
height: 100%;
}
项目运行就可以正常显示。并且菜单栏根据页面进行路由选择。

地址栏进行相应显示。

任务总结
本次任务,主要完成并掌握以下内容:
(1)VUE路由设计,子路由设计;
(2)VUE单页面应用原理;
(3)熟练引用Element的各类组件。
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/2bb52d6566.html
