16、Vue 路由

步骤:

1、安装
npm install vue-router --save

2、引入并实例化(main.js中)
import VueRouter from 'vue-router'

Vue.use(VueRouter);//官方插件都这样用


image.png

3、引入、创建组件(main.js中)
import Home from './components/Home.vue';
import News from './components/News.vue';


image.png

4、配置路由(main.js中)
const routes=[
{path:'/home',component:Home},
{path:'/news',component:News},
{path:'*',component:Home},//默认跳转路由
]


image.png

5、//5、实例化VueRouter:(main.js中)
const router = new VueRouter({
routes//(或写成routes:routes)
})

image.png

6、挂载router(main.js中)


image.png

new Vue({
el: '#app',
//6、挂载router
router,
components: { App },
template: '<App/>'
})
7、将路由出口:(App.vue中)
<router-link to="/home">首页</router-link>
<router-link to="/news">新闻</router-link>
<router-view></router-view>放在App.vue中

image.png

main.js:
// The Vue build version to load with the import command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'//引入vue实例
import App from './App'
//1、引入VueRouter
import VueRouter from 'vue-router'

import VueResource from 'Vue-resource'
//从'Vue-resource'中引入模块,并命名为'VueResource'
Vue.config.productionTip = false;
Vue.use(VueResource);//官方插件都这样用
//2、Vue.use(VueRouter);
Vue.use(VueRouter);

//3、创建组件
import Home from './components/Home.vue';
import News from './components/News.vue';

//4、配置路由
const routes=[
{path:'/home',component:Home},
{path:'/news',component:News},
{path:'*',component:Home},//默认跳转路由
]
//5、实例化VueRouter:
const router = new VueRouter({
routes//(或写成routes:routes)
})
new Vue({
el: '#app',
//6、挂载router
router,
components: { App },
template: '<App/>'
})

//7、将路由出口:<router-view></router-view>放在App.vue中

App.vue:


<template>
<div id="app">
<router-link to="/home">首页</router-link>
<router-link to="/news">新闻</router-link>
<router-view></router-view>
</div>
</template>

<script>

export default {
name: 'App',
data (){
return{
msg:'你好!',
}
},
methods:{

},

}
</script>

<style>

app {

font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
color: #2c3e50;
margin-top: 60px;
}
</style>

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

推荐阅读更多精彩内容

  • 1路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的内容,如果点击页面上的abou...
    你好陌生人丶阅读 1,676评论 0 6
  • 第一节 vue:读音: v-u-eview vue和angular区别?vue——简单、易学指令以 v-xxx一片...
    黑色的五叶草阅读 1,151评论 0 1
  • 路由实现的方式 声明式。<router-link :to="..."> 编程式。router.push(...) ...
    SailingBytes阅读 1,148评论 1 3
  • Vue-router.min.js 路由路径由 <router-link></router-link>标签配置 ...
    不期而遇_3491阅读 687评论 0 0
  • _________________________________________________________...
    fastwe阅读 1,423评论 0 0