Vue之Router

Vue之Router

单页面应用,必需要会vue里的插件html

vue的官网上有个生态系统--核心插件:   Vue Router   和      Vuexvue

安装

官网安装提供了多种安装方法,咱们使用npm install vue-router --save ,它是项目依赖因此要--savevue-router

使用

若是在一个模块化工程中使用它,必需要经过 Vue.use() 明确地安装路由功能npm

mian.js

import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'

// 1. 定义 (路由) 组件。
// 能够从其余文件 import 进来
import Vmain from './components/Vmain.vue'
import Vcourse from './components/Vcourse.vue'
import Vmarked from './components/Vmarked.vue' Vue.use(VueRouter)


// 2. 定义路由对象,每个路由应该映射一个组件,还能够传其它配置参数
const router = new VueRouter({
    mode: 'history', //去掉uri的#号,详情看官网
    routes:[
    { path: '/', component: Vmain },
    { path: '/course', component: Vcourse },
    { path: '/mark', component: Vmarked }
    ]
})


new Vue({
  el: '#app',
  // 3. 建立和挂载根实例。
  // 记得要经过 router 配置参数注入路由,
  // 从而让整个应用都有路由功能
  router, // 优雅的写法,(缩写) 至关于 routes: routes
  render: h => h(App)
})

App.vue

<template>
    <div id="app">
      <p>
        <!-- 4 -->
        <!-- 使用 router-link 组件来导航. -->
        <!-- 经过传入 `to` 属性指定连接. -->
        <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
        <router-link to="/">首页</router-link>
        <router-link to="/course">课程</router-link>
        <router-link to="/mark">Markdown</router-link>
      </p>
      <!-- 5 路由出口 -->
      <!-- 路由匹配到的组件将渲染在这里 -->
      <router-view></router-view>
    </div>
</template>
<script>

    export default {
        name:'App',     
        data(){             
            return {

            }
        },
    }

</script>
<style>

</style>

Vmain.vue  

<template>
    <div class="main">
        首页
    </div>
</template>
<script>

    export default {
        name:'Vmain',     
        data(){             
            return {

            }
        },
    }
    
</script>
<style>

</style>

Vcourse.vue

<template>
    <div class="course">
        课程
    </div>
</template>
<script>

    export default {
        name:'Vcourse',     
        data(){             
            return {

            }
        },
    }
    
</script>
<style>

</style>

Vmarked

<template>
    <div class="marked">
        编辑器
    </div>
</template>
<script>

    export default {
        name:'Vmarked',     
        data(){             
            return {

            }
        },
    }
    
</script>
<style>

</style>
相关文章
相关标签/搜索