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使用Element实现增删改查+打包的步骤
Nov 25 Vue.js
vue $router和$route的区别详解
Dec 02 Vue.js
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
详解vue3中组件的非兼容变更
Mar 03 Vue.js
vue3.0封装轮播图组件的步骤
Mar 04 Vue.js
手写Vue2.0 数据劫持的示例
Mar 04 Vue.js
详解vue中v-for的key唯一性
May 15 Vue.js
vue-element-admin项目导入和导出的实现
May 21 Vue.js
vue-cropper插件实现图片截取上传组件封装
May 27 Vue.js
一篇文章告诉你如何实现Vue前端分页和后端分页
Feb 18 Vue.js
vue使用refs获取嵌套组件中的值过程
Mar 31 Vue.js
解决vue自定义组件@click点击失效问题
Apr 30 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
php5.2以下版本无json_decode函数的解决方法
2014/05/25 PHP
php过滤html标记属性类用法实例
2014/09/23 PHP
PHP删除指定目录中的所有目录及文件的方法
2015/02/26 PHP
PHP中类属性与类静态变量的访问方法示例
2016/07/13 PHP
PHP中number_format()函数的用法讲解
2019/04/08 PHP
Laravel5.5+ 使用API Resources快速输出自定义JSON方法详解
2020/04/06 PHP
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
jQuery帮助之筛选查找 children([expr])
2011/01/31 Javascript
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
javascript实现当前页导航激活的方法
2015/02/27 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
2015/03/31 Javascript
JS更改select内option属性的方法
2015/10/14 Javascript
CSS或者JS实现鼠标悬停显示另一元素
2016/01/22 Javascript
jQuery禁用快捷键例如禁用F5刷新 禁用右键菜单等的简单实现
2016/08/31 Javascript
jQuery中checkbox反复调用attr('checked', true/false)只有第一次生效的解决方法
2016/11/16 Javascript
JS给按钮添加跳转功能类似a标签
2017/05/30 Javascript
vue中如何实现变量和字符串拼接
2017/06/19 Javascript
jQuery实现倒计时功能 jQuery实现计时器功能
2017/09/19 jQuery
JS使用数组实现的队列功能示例
2019/03/04 Javascript
layui+jquery支持IE8的表格分页方法
2019/09/28 jQuery
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
Python中为feedparser设置超时时间避免堵塞
2014/09/28 Python
python中matplotlib实现最小二乘法拟合的过程详解
2017/07/11 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
OpenCV+python手势识别框架和实例讲解
2018/08/03 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
python 字典 setdefault()和get()方法比较详解
2019/08/07 Python
Python3 合并二叉树的实现
2019/09/30 Python
安装Pycharm2019以及配置anconda教程的方法步骤
2019/11/11 Python
瑜伽灵感珠宝:Satya Jewelry
2018/01/06 全球购物
泰国网上购物:Shopee泰国
2018/09/14 全球购物
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
小学校园活动策划
2014/01/30 职场文书
人事部经理岗位职责
2014/03/07 职场文书
适合毕业生创业的项目怎么找?
2019/08/08 职场文书