vue-router2.0二级路由的简单使用

1、app.vue中

<template>
  <div id="app">
    <router-view></router-view>
  </div>
</template>

2、router中index.js(路由的路径配置)

import Vue from 'vue'
import Router from 'vue-router'
import Hello from '@/components/Hello'
import Login from '@/components/Login'
import index from '@/components/index'
import Header from '@/components/Header/Header'
import Product from '@/components/Product/Product'

Vue.use(Router)

export default new Router({

  //vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。

//如果不想要很丑的 hash,我们可以用路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。

   mode: 'history',//可以是去掉#号
  routes: [
    {
      path: '/',
      name: 'Login',
      component: Login
    },
    {
      path: '/index',
      name: 'index',
      component: index,
      children: [  //这里就是二级路由的配置
        {
          path: '/hello',
          name: 'Hello',
          component: Hello
        },
        {
          path: '/header',
          name: 'Header',
          component: Header
        },
        {
          path: '/product',
          name: 'Product',
          component: Product
        }
      ]
    }
  ]
})

3、下面是我们的index.vue中的代码

<template>
  <div class="aaa">
    <div class="list-group">
       <router-link to="/hello">Go to hello</router-link>
       <router-link to="/header">Go to header</router-link>
       <router-link to="/product">Go to product</router-link>
       <input type="text" v-model="username">
       <button v-click="text"></button>
       <router-view></router-view>
    </div>
  </div>
</template>

4、最后就是新建hello、header、product这几个组件来验证我们的效果,这里就不做演示了,因为我自己已经测试过了,没有问题

posted @ 2017-07-05 14:07  豆浆油条123  阅读(29987)  评论(0编辑  收藏  举报