本项目目前结构如下

1、Login页面=》MainFrm页面=》MainFrm左部菜单,右边是显示区域可以切换子页面。

2、当点击左部菜单时,右边的子页面随着进行切换。

实现关键代码如下
1、修改router下的index.js

export default new Router({
routes: [
{
path: '/',
name: '登录',
component: Login
}
{
path: '/MainFrm',
name: '首页',
component: MainFrm,
children: [
{
path: '/StudentClass',
name: '班级',
component: StudentClass
},
{
path: '/Student',
name: '学生',
component: Student
}
]
}
]
})

2、在MainFrm中修改代码如下,a-layout为antdesign布局写法,a-menu为antdesign菜单。

<template>
<a-layout id="components-layout-demo-top-side-2">
<a-layout-header class="header" style="background: rgb(9, 154, 135);">
<div class="logo" style="background:url(/static/img/tigongshang.png)" />
<div style="float:right">
<a-avatar style="backgroundColor:#ffffff; color:#888888;" icon="user" />
<a-dropdown>
<a class="ant-dropdown-link" href="#" style="color:#ffffff;text-decoration: blink;">
管理员名称
<a-icon type="down"/>
</a>
<a-menu slot="overlay">
<a-menu-item>
<a href="javascript:;">修改密码</a>
</a-menu-item>
<a-menu-item>
<a href="javascript:;">退出登录</a>
</a-menu-item>
</a-menu>
</a-dropdown>
</div>
</a-layout-header>
<a-layout>
<a-layout-sider width="200" :style="{ overflow: 'auto', height: '100vh', position: 'fixed', left: 0, background: '#fff' }">
<a-menu mode="inline" :defaultSelectedKeys="['1']" :defaultOpenKeys="['sub2','sub3']" :style="{ height: '100%', borderRight: 0 }">
<a-menu-item key="1">
<a-icon type="home"/>
<span class="nav-text">班级</span>
<a-menu-item key="2" @click="menu('StudentClass')">班级</a-menu-item>
</a-menu-item>
<a-sub-menu key="sub2">
<span slot="title">
<a-icon type="database"/>学生
</span>
<a-menu-item key="2" @click="menu('Student')">学生</a-menu-item>
</a-sub-menu>
</a-menu>
</a-layout-sider>
<a-layout :style="{ marginLeft:'200px', padding:'24px 24px 0px' }">
<a-layout-content :style="{ background: '#fff', padding: '24px', margin: 0, minHeight: '280px', overflow: 'initial'}">
<router-view></router-view>
</a-layout-content>
</a-layout>
</a-layout>
</a-layout>
</template>

3、修改export default如下

export default {
name: 'MainFrm',
data () {
return {
collapsed: false,
page: Student
}
},
methods: {
menu (s) {
console.log(s)
this.$router.push(s)
}
}
}

这样点击左部菜单时,就可以自动在MainFrm中切换班级和学生了。

AntDesign vue学习笔记(三)嵌套路由使用的更多相关文章

  1. AntDesign vue学习笔记(七)Form 读写与图片上传

    AntDesign Form使用布局相比传统Jquery有点繁琐 (一)先读写一个简单的input为例 <a-form :form="form" layout="v ...

  2. vue学习笔记(三)class和style绑定

    前言 通过上一章的学习vue学习笔记(二)vue的生命周期和钩子函数,我们已经更近一步的知道了关于vue的一些知识,本篇博客将进一步探讨vue其它方面的内容,vue中关于class和style绑定,关 ...

  3. Vue学习笔记三:v-bind,v-on的使用

    目录 v-bind:绑定属性值,内容相当于js,缩写: v-on:绑定方法,缩写@ 总结 v-bind:绑定属性值,内容相当于js,缩写: 我添加了一个input标签,如下 <input typ ...

  4. AntDesign vue学习笔记(一)初始化项目

    最近学习AntDesign组件使用,官方Pro例子集成度太高,不容易学习,将从最基础组件一个一个搭建. 1.创建Vue Cli项目 2.引入ant design组件 $ cnpm i --save a ...

  5. nodejs学习笔记<三>关于路由(url)

    在网站开发中,路由的设置非常关键.nodejs对路由处理封装了一个比较全面的模块. 来认识下url模块 1)在命令行(cmd)可以直接 node —> url 可直接查看url模块的所有方法. ...

  6. AntDesign vue学习笔记(九)自定义文件上传

    第七节时提到,上传文件时实际可能需要传输一个token. 1.查看vue antdesign文档https://vue.ant.design/components/upload-cn/ 2.使用cus ...

  7. AntDesign vue学习笔记(四)使用组件切换

    同样实现上一篇功能, 改为使用组件切换,实现方法如下 1.修改MainFrm中的<router-view/>如下代码 2.注册局部组件 export default { name: 'Ma ...

  8. VUE 学习笔记 三 模板语法

    1.插值 a.文本 数据绑定最常见的形式就是使用“Mustache”语法 (双大括号) 的文本插值 <span>Message: {{ msg }}</span> v-once ...

  9. vue学习笔记(三):vue-cli脚手架搭建

    一:安装vue-cli脚手架: 1:为了确保你的node版本在4.*以上,输入 node -v 查看本机node版本,低于4请更新. 2:输入:  npm install -g vue-cli     ...

随机推荐

  1. springmvc4 mybatis 整合 框架源码 bootstrap html5 mysql oracle sqlsever spring SSM

    A 调用摄像头拍照,自定义裁剪编辑头像 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统]B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单;  技 ...

  2. Linux 下的 mysql 自动备份

    Linux 下实现自动备份,主要就是编写好执行备份的 shell script( *.sh )文件,设好权限(可读,可执行).然后利用 Linux 定时任务 crontab 来执行备份脚本就可以了.以 ...

  3. 隐马尔科夫模型(Hidden Markov Models) 系列之二

    转自:http://blog.csdn.net/eaglex/article/details/6385204 隐含模式(Hidden Patterns) 当马尔科夫过程不够强大的时候,我们又该怎么办呢 ...

  4. 浅谈MongoDB基础及架构

    1.简述MongDB是一个强大.灵活而可扩展的数据存储系统,其将强大的可扩展特性与关系库最有用的特性进行了整合,像:次级索引,范围查询和排序等特性.而MongDB也内建了类似MapReduce汇聚和地 ...

  5. PS图片转CSS+HTML页面的正确步骤

    转载来源:https://www.cnblogs.com/gg_lihui/p/3396409.html 制作网页标准的流程是:拿到网站美工制作的psd效果图后,网页设计师再把PS制作的图片转html ...

  6. django rest_framework vue 实现用户列表分页

    django rest_framework vue 实现用户列表分页 后端 配置urls # 导入view from api.appview.userListView import userListV ...

  7. Prometheus(三):Prometheus监控交换机(snmp)

    默认已安装Prometheus服务,服务地址:192.168.56.200 一.获取交换机snmp信息 snmp服务IP(交换机IP):172.20.2.83 snmp community:dfete ...

  8. C#进阶系列 ---- 《CLR via C#》

      [C#进阶系列]30 学习总结 [C#进阶系列]29 混合线程同步构造 [C#进阶系列]28 基元线程同步构造 [C#进阶系列]27 I/O限制的异步操作 [C#进阶系列]26 计算限制的异步操作 ...

  9. 数据库中的gt,ge,lt,le的区别

    eq相等   ne.neq不相等,   gt大于, lt小于 gte.ge大于等于   lte.le 小于等于   not非   mod求模   is [not] div by是否能被某数整除   i ...

  10. Android Studio + uiautomator 配置运行

    1.在build.gradle中添加依赖: androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v1 ...