vue 在单页面应用里使用二级套嵌路由


Posted in Vue.js onDecember 19, 2020

在一个单页面应用里使用二级套嵌路由

目录结构如下:

vue 在单页面应用里使用二级套嵌路由

其中main.js为全局配置文件,App.vue为项目入口。

main.js中路由配置如下

import Vue from 'vue'//引入vue
import App from './App'//引入主模板
import Router from 'vue-router'// 引入router路由
// 引入项目的模块组件
import licai from './components/licai'
import home from './components/home'
import wode from './components/wode'
import home1 from './components/home/home1'
import home2 from './components/home/home2'
import home2_1 from './components/home/home2_box/home2_1'//套嵌路由
import home2_2 from './components/home/home2_box/home2_2'
 
Vue.use(Router)// 使用router
 
// 定义路由
var routes = [
{ path: '/', redirect: '/home' },//默认显示home
{
 path: '/home',
 component: home,//路径home的组件是home
 meta: { navShow: true}
}, {
 path: '/licai',
 component: licai,
 meta: { navShow: true}
}, {
 path: '/wode',
 component:wode,
 meta: { navShow: true}
},{
  path:'/home1/:num',
  component:home1,
  meta: { navShow: false}
},{
  path:'/home2',
  component:home2,
  meta: { navShow: false},
  //这里定义了两个子路由在home2模块下
  children:[
    { path: '/home2/home2_1', component:home2_1},
    { path: '/home2/home2_2', component:home2_2}
  ]
}]
// 实例化路由
var vueRouter = new Router({
 routes//此路由为上方定义
})
// 创建和挂载根实例
new Vue({
 el: '#app',//vue项目在哪个元素下
 router: vueRouter,//使用路由
 template: '<App></App>',
 components: { App }
})

App.vue为主模板,也就是入口文件,其中定义的路由与一级路由无任何区别:

<template>
 <div id="app1">
  <div class="nav-bottom" v-show="$route.meta.navShow">
    <!-- 引入公用的头部 header组件 -->
    <v-header></v-header>
  </div>
  <div class="contianer">
    <!-- 路由中的组件在这里被渲染,默认被渲染的为home组件,已在路由配置中设置 -->
    <router-view></router-view>
  </div>
 </div>
</template>

home.vue,这里是首页,从这里可以进入home2页面:

<template>
  <div class="home box">
      
    <h3>这里是home页面</h3>
    <router-link to="/home2">套嵌路由</router-link>
      
  </div>
</template>

home2.vue,这里可以展示套嵌路由了:

<template id="home2">
  <div>
    <header class="home header"><a href="javascript:void(0);" rel="external nofollow" οnclick="javacript:window.history.go(-1)"><img src="../../../static/img/png1.png"/></a>路由套嵌</header>
    <router-link to="/home2/home2_1">子页面1</router-link>
    <router-link to="/home2/home2_2">子页面2</router-link>
    <!-- 路由匹配到的组件将渲染在这里 -->
    <router-view></router-view>
  </div>
</template>
<style>
.home.header{font-size:0.8rem;position:relative;}
.home.header>a{display: block;height:0.8rem;width:0.4rem;margin-top:0.6rem;position:absolute;left:0.5rem;}
.home.header>a>img{height:100%;width:100%;display:block;}
</style>

效果:

vue 在单页面应用里使用二级套嵌路由

以上就是vue 在单页面应用里使用二级套嵌路由的详细内容,更多关于vue 使用二级嵌套路由的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
详解vue实现坐标拾取器功能示例
Nov 18 Vue.js
vuex页面刷新导致数据丢失的解决方案
Dec 10 Vue.js
vue实现简易的双向数据绑定
Dec 29 Vue.js
vue如何使用rem适配
Feb 06 Vue.js
Vue2.x-使用防抖以及节流的示例
Mar 02 Vue.js
vue2实现provide inject传递响应式
May 21 Vue.js
Vue实现导入Excel功能步骤详解
Jul 03 Vue.js
Vue Element-ui表单校验规则实现
Jul 09 Vue.js
Vue鼠标滚轮滚动切换路由效果的实现方法
Aug 04 Vue.js
vue实现省市区联动 element-china-area-data插件
Apr 22 Vue.js
vue-cli3.x配置全局的scss的时候报错问题及解决
Apr 30 Vue.js
vue3 自定义图片放大器效果的示例代码
Jul 23 Vue.js
vue中如何添加百度统计代码
Dec 19 #Vue.js
vue 导航守卫和axios拦截器有哪些区别
Dec 19 #Vue.js
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
Dec 19 #Vue.js
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 #Vue.js
Vue——前端生成二维码的示例
Dec 19 #Vue.js
如何在vue中使用kindeditor富文本编辑器
Dec 19 #Vue.js
vue 在服务器端直接修改请求的接口地址
Dec 19 #Vue.js
You might like
利用递归把多维数组转为一维数组的函数
2006/10/09 PHP
PHP中3种生成XML文件方法的速度效率比较
2012/10/06 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
PHP基于mcript扩展实现对称加密功能示例
2019/02/21 PHP
PHP Ajax跨域问题解决方案代码实例
2020/08/01 PHP
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
jquery 常用操作整理 基础入门篇
2009/10/14 Javascript
js下用gb2312编码解码实现方法
2009/12/31 Javascript
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍
2013/01/24 Javascript
JavaScript通过字典进行字符串翻译转换的方法
2015/03/19 Javascript
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
2015/06/19 Javascript
js操作cookie保存浏览记录的方法
2015/12/25 Javascript
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
jQuery上传多张图片带进度条样式(DEMO)
2017/03/02 Javascript
angular-ngSanitize模块-$sanitize服务详解
2017/06/13 Javascript
如何选择适合你的JavaScript框架
2017/11/20 Javascript
js最简单的双向绑定实例讲解
2018/01/02 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
[01:39]2014DOTA2国际邀请赛 Newbee经理CU专访队伍火力全开
2014/07/15 DOTA
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
Python中跳台阶、变态跳台阶与矩形覆盖问题的解决方法
2018/05/19 Python
Python实用技巧之利用元组代替字典并为元组元素命名
2018/07/11 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
如何打开WebSphere远程debug
2014/10/10 面试题
党风廉政建设责任书
2014/04/14 职场文书
电子专业求职信
2014/06/19 职场文书
经营目标管理责任书
2014/07/25 职场文书
助残日活动总结
2014/08/27 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL