vue多层嵌套路由实例分析


Posted in Javascript onMarch 19, 2019

本文实例讲述了vue多层嵌套路由。分享给大家供大家参考,具体如下:

多层嵌套:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <script src="bower_components/vue/dist/vue.js"></script>
  <script src="bower_components/vue-router/dist/vue-router.js"></script>
  <style>
    .v-link-active{
      font-size: 20px;
      color: #f60;
    }
  </style>
</head>
<body>
  <div id="box">
    <ul>
      <li>
        <a v-link="{path:'/home'}">主页</a>
      </li>
      <li>
        <a v-link="{path:'/news'}">新闻</a>
      </li>
    </ul>
    <div>
      <router-view></router-view>
    </div>
  </div>
  <template id="home">
    <h3>我是主页</h3>
    <div>
      <a v-link="{path:'/home/login'}">登录</a>
      <a v-link="{path:'/home/reg'}">注册</a>
    </div>
    <div>
      <router-view></router-view>
    </div>
  </template>
  <template id="news">
    <h3>我是新闻</h3>
  </template>
  <script>
    //1. 准备一个根组件
    var App=Vue.extend();
    //2. Home News组件都准备
    var Home=Vue.extend({
      template:'#home'
    });
    var News=Vue.extend({
      template:'#news'
    });
    //3. 准备路由
    var router=new VueRouter();
    //4. 关联
    router.map({
      'home':{
        component:Home,
        subRoutes:{
          'login':{
            component:{
              template:'<strong>我是登录信息</strong>'
            }
          },
          'reg':{
            component:{
              template:'<strong>我是注册信息</strong>'
            }
          }
        }
      },
      'news':{
        component:News
      }
    });
    //5. 启动路由
    router.start(App,'#box');
    //6. 跳转
    router.redirect({
      '/':'home'
    });
  </script>
</body>
</html>

效果图:

vue多层嵌套路由实例分析

路由其他信息:

/detail/:id/age/:age
{{$route.params | json}}    ->  当前参数
{{$route.path}}    ->  当前路径
{{$route.query | json}}    ->  数据

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <script src="bower_components/vue/dist/vue.js"></script>
  <script src="bower_components/vue-router/dist/vue-router.js"></script>
  <style>
    .v-link-active{
      font-size: 20px;
      color: #f60;
    }
  </style>
</head>
<body>
  <div id="box">
    <ul>
      <li>
        <a v-link="{path:'/home'}">主页</a>
      </li>
      <li>
        <a v-link="{path:'/news'}">新闻</a>
      </li>
    </ul>
    <div>
      <router-view></router-view>
    </div>
  </div>
  <template id="home">
    <h3>我是主页</h3>
    <div>
      <a v-link="{path:'/home/login/zns'}">登录</a>
      <a v-link="{path:'/home/reg/strive'}">注册</a>
    </div>
    <div>
      <router-view></router-view>
    </div>
  </template>
  <template id="news">
    <h3>我是新闻</h3>
    <div>
      <a v-link="{path:'/news/detail/001'}">新闻001</a>
      <a v-link="{path:'/news/detail/002'}">新闻002</a>
    </div>
    <router-view></router-view>
  </template>
  <template id="detail">
    {{$route.params | json}}
    <br>
    {{$route.path}}
    <br>
    {{$route.query | json}}
  </template>
  <script>
    //1. 准备一个根组件
    var App=Vue.extend();
    //2. Home News组件都准备
    var Home=Vue.extend({
      template:'#home'
    });
    var News=Vue.extend({
      template:'#news'
    });
    var Detail=Vue.extend({
      template:'#detail'
    });
    //3. 准备路由
    var router=new VueRouter();
    //4. 关联
    router.map({
      'home':{
        component:Home,
        subRoutes:{
          'login/:name':{
            component:{
              template:'<strong>我是登录信息 {{$route.params | json}}</strong>'
            }
          },
          'reg':{
            component:{
              template:'<strong>我是注册信息</strong>'
            }
          }
        }
      },
      'news':{
        component:News,
        subRoutes:{
          '/detail/:id':{
            component:Detail
          }
        }
      }
    });
    //5. 启动路由
    router.start(App,'#box');
    //6. 跳转
    router.redirect({
      '/':'home'
    });
  </script>
</body>
</html>

效果图:

vue多层嵌套路由实例分析

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
一段利用WSH获取登录时间的jscript代码
May 11 Javascript
JS版的date函数(和PHP的date函数一样)
May 12 Javascript
IE下通过a实现location.href 获取referer的值
Sep 04 Javascript
jquery事件preventDefault()方法用法实例
Jan 16 Javascript
原生Javascript和jQuery做轮播图简单例子
Oct 11 Javascript
浅谈jquery选择器 :first与:first-child的区别
Nov 20 Javascript
彻底搞懂JavaScript中的apply和call方法(必看)
Sep 18 Javascript
Bootstrap 3多级下拉菜单实例
Nov 23 Javascript
JavaScript new对象的四个过程实例浅析
Jul 31 Javascript
Node.js 使用axios读写influxDB的方法示例
Oct 26 Javascript
js实现时钟定时器
Mar 26 Javascript
js实现查询商品案例
Jul 22 Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
Mar 19 #Javascript
vue项目移动端实现ip输入框问题
Mar 19 #Javascript
详解使用React.memo()来优化函数组件的性能
Mar 19 #Javascript
vue组件定义,全局、局部组件,配合模板及动态组件功能示例
Mar 19 #Javascript
express.js中间件说明详解
Mar 19 #Javascript
js array数组对象操作方法汇总
Mar 18 #Javascript
浅析JavaScript异步代码优化
Mar 18 #Javascript
You might like
德生1994机评
2021/03/02 无线电
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
解析php防止form重复提交的方法
2013/07/01 PHP
php实现遍历目录并删除指定文件中指定内容
2015/01/21 PHP
php通过分类列表产生分类树数组的方法
2015/04/20 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
2019/06/13 PHP
基于jQuery的可以控制左右滚动及自动滚动效果的代码
2010/07/25 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
JS刷新当前页面的几种方法总结
2013/12/24 Javascript
jQuery自定义事件的简单实现代码
2014/01/27 Javascript
jquery操作select大全
2014/04/25 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
JS弹出对话框实现方法(三种方式)
2015/12/18 Javascript
Angularjs全局变量被作用域监听的正确姿势
2016/02/06 Javascript
解决jquery无法找到其他父级子集问题的方法
2016/05/10 Javascript
改变checkbox默认选中状态及取值的实现代码
2016/05/26 Javascript
Bootstrap字体图标无法正常显示的解决方法
2016/10/08 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
2018/02/08 Javascript
Vue press 支持图片放大功能的实例代码
2018/11/09 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
2019/08/29 Javascript
[机器视觉]使用python自动识别验证码详解
2019/05/16 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
2019/08/29 Python
Python模块future用法原理详解
2020/01/20 Python
Python识别html主要文本框过程解析
2020/02/18 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
matplotlib.pyplot.matshow 矩阵可视化实例
2020/06/16 Python
影子教师研修方案
2014/06/14 职场文书
人力资源管理专业求职信
2014/07/23 职场文书
复兴之路展览观后感
2015/06/02 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
2021/04/13 HTML / CSS
用Python监控你的朋友都在浏览哪些网站?
2021/05/27 Python