vue-router是vue框架中的一个插件。

vue-router实现原理

     vue-router通过hash与History interface两种方式实现前端路由,更新页面内容但不重新请求页面”是前端路由原理的核心之一。

使用的具体方法

1.安装vue-router ,npm install vue-router --save

2.导入vue-router

3.通过vue.user() 使用插件

4.创建路由对象

5.导入组件

6.配置URL和组件直接的映射关系

7.导出router对象

index.js

在vue-router中,通过mode参数来决定采用哪一种方式,默认hash。
history 注:如果浏览器不支持history新特性,则采用hash方式

import VueRouter from 'vue-router'
import Vue from 'vue'
import Home from '../components/Home'
import About from '../components/About'

// 通过vue.use(插件),安装插件
Vue.use(VueRouter)
    // 创建路由对象
const routes = [{
    path: "",
    // 重定项
    redirect: '/home'
}, {
    path: '/home',
    component: Home
}, {
    path: '/about',
    component: About
}]
const router = new VueRouter({
        // 配置URL和组价直接的映射关系
        routes,
        // history模式 
        mode: 'history'
    })
    // 将router对象传入到vue实例中
export default router

8.在main.js中导入router对象

import Vue from 'vue'
import App from './App'
import router from './router/index.js'

Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
    el: '#app',
    router,
    render: h => h(App)
})

9.在index.html中使用

<template>
  <div id="app">
    <h2>hello world</h2>
    <router-link to='home'>首页</router-link>
    <router-link to='about'>关于</router-link>
    <router-view></router-view>
  </div>
</template>

router-view:当路由发生改变时,重新执行render函数。router-view会找到对应的组件进行渲染。

router-link:创建路由链接标签(默认a标签),绑定对应的事件,根据属性执行路由实例不通的方法。

效果:

 

Logo

前往低代码交流专区

更多推荐