Web前端之路让前端飞前端Vue专辑

vue从入门到xx,第三节:vue.js路由使用

2017-06-30  本文已影响109人  stiller

接文集上一篇(可以查看本文文集),已经书写了自己的组件,这里主要是路由的控制。

vue.js官方推荐使用官方插件vue-router

首先使用npm安装此插件
npm install --save vue-router
安装成功后,如下图所示,到目前为止,安装的版本为

vue-router

在上一篇里建立的test.vue,在这篇中新建一个test2.vue插件,无需在App.vue中调用。


test2

即打开这个页面的时候应该显示的值为testValue2。

在main.js中调用和定义路由,其代码如下所示。

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

Vue.use(VueRouter)
//开启debug模式
Vue.config.debug = true;

// 创建一个路由器实例
import test2 from './component/test2.vue'
import test1 from './component/test.vue'

const main={template:'<div>this is main page</div>'}
// 并且配置路由规则
const router = new VueRouter({
    mode: 'history',
    base: __dirname,
    routes: [
        { path: '/', name: 'main', component: main },
        { path: '/test', name: 'test', component: test1 },
        { path: '/test2', name: 'test2', component: test2 }
    ]
})

new Vue({
    el:'#app',
    router,
    render: h => h(App)
})

这里定义了一个常亮main作为打开/目录时显示的文字,并且在路由为相应的路由显示相应的组件。

顺便将上一节中的App.vue恢复,并修改成如下图所示。

<template>
    <div id="app">
        <h1>Named Routes</h1>
        <p>Current route name: {{ $route.name }}</p>
        <ul>
            <li><router-link :to="{ name: 'main' }">mian</router-link></li>
            <li><router-link :to="{ name: 'test' }">test</router-link></li>
            <li><router-link :to="{ name: 'test2' }">test2</router-link></li>
        </ul>
        <router-view class="view"></router-view>
    </div>
</template>

<script>
    export default {
        name: 'app',
        data () {
            return {}
        },
    }
</script>

此时,服务器应该自动刷新页面,显示效果如下图所示。

主页 test test2

done

上一篇下一篇

猜你喜欢

热点阅读