vue--动态路由和get传值
Posted e0yu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue--动态路由和get传值相关的知识,希望对你有一定的参考价值。
动态路由:
<template> <div id="News"> <v-header></v-header> <hr> {{title}} <br> <p v-for="(x,k) in list"> <!-- <router-link to="/content/123">{{k}}-{{x}}</router-link> --> <!-- 因为要绑定我们的动态数据 所以要用 : 然后做拼接 --> <router-link :to="‘/content/‘+k">{{k}}-{{x}}</router-link> </p> </div> </template> <script> import Header from ‘./Header.vue‘; export default { name: ‘News‘, data () { return { title:‘我是新闻News组件‘, list:[‘111‘,‘222‘,‘3330‘,‘444‘] } }, methods:{}, components:{ ‘v-header‘:Header, } } </script>
点击之后能够跳转到一个详情:可以新建一个详情的组件:
<template> <div id="content"> {{title}}----{{aid}} </div> </template> <script> export default { name: ‘Header‘, data () { return { title:‘我是一个详情页面‘, aid:‘‘, } }, methods:{ run(){}, }, mounted(){ // 获取传递过来的动态路由的值 console.log(this.$route.params); console.log(this.$route.params[‘aid‘]); this.aid = this.$route.params[‘aid‘]; } } </script> </script>
此时还需要配置路由:
// 1、创建组件 import Header from ‘./components/Header.vue‘ import Home from ‘./components/Home.vue‘ import News from ‘./components/News.vue‘ import Content from ‘./components/Content.vue‘ // 2、配置路由 const routes = [ { path: ‘/home‘, component: Home }, { path: ‘/news‘, component: News }, { path: ‘/content‘, component: Content }, { path: ‘/content/:aid‘, component: Content }, { path: ‘*‘, redirect:‘/home‘}, // 默认跳转路由 ]
get传值:
<p v-for="(x,k) in list">
<!-- <router-link to="/content?aid=123">{{k}}-{{x}}</router-link> -->
<router-link :to="‘/content?aid=‘+k">{{k}}-{{x}}</router-link>
</p>
配置路由:
// 2、配置路由 const routes = [ { path: ‘/home‘, component: Home }, { path: ‘/news‘, component: News }, { path: ‘/content‘, component: Content }, { path: ‘*‘, redirect:‘/home‘}, // 默认跳转路由 ]
获取参数:
mounted(){ // 获取get传递过来的动态路由的值 console.log(this.$route.query); console.log(this.$route.query[‘aid‘]); this.aid = this.$route.query[‘aid‘]; }
以上是关于vue--动态路由和get传值的主要内容,如果未能解决你的问题,请参考以下文章
vue-router路由传递参数 + get传值query获取