路由的简单使用

1. router-link

<router-link> 默认会被渲染成一个 <a> 标签,通过传入 to 属性指定链接。

<router-link to="/home">首页</router-link>

2.router-view

路由匹配到的组件会渲染到router-view 中。

<div id="app">
  <p>
    <router-link to="/home">首页</router-link>
    <router-link to="/category">分类</router-link>
  </p>
  <!-- 路由出口 -->
  <!-- 路由匹配到的组件将渲染在这里 -->
  <router-view></router-view>
</div>

3. 路由js文件的配置

(1).如果使用模块化机制编程,导入Vue和VueRouter,要调用 Vue.use(VueRouter)。

//router/ index.js

import Vue from 'vue';
import Router from 'vue-router';

Vue.use(Router);

(2).使用import 导入路由组件。

import Home from 'pages/home';
import Category from 'pages/category';

(3).定义路由。

  • name 路由名称,并且<router-link>中的to属性也可以使用name匹配路由。
  • path 路径,也与<router-link>中的to属性进行匹配(常用的匹配方式)。
  • component 组件,与(2)中导入路由组件的名称一致。
const routes = [
  {
    name:'home',
    path:'/home',
    component: Home
  },
  {
    name: 'category',
    path: '/category',
    component: Category
  }
]

(4).创建 router 实例,然后传 routes 配置,并把实例导出。(即(3)中的配置)

export default new Router({
  routes // (缩写) 相当于 routes: routes
});

(5). 使用vue-cli搭建的项目,有一个入口文件main.js 。在里面导入路由js文件,并挂载到vue实例中,这样整个项目都可以使用路由了。

import router from './router';

new Vue({
  router
});

(6). 最后在任何组件内通过 this.$router访问路由器,也可以通过 this.$route 访问当前路由。
(7). 当 <router-link> 对应的路由匹配成功,将自动设置 class 属性值.router-link-active
例如点击首页的时候,如下第一个路由会设置.router-link-active类名。

 <p>
    <router-link to="/home">首页</router-link>
    <router-link to="/category">分类</router-link>
  </p>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容