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传值的主要内容,如果未能解决你的问题,请参考以下文章

16.动态路由传值和get传值

node-koa-路由传值

React动态路由和get传值

vue-router路由传递参数 + get传值query获取

Angular--get传值&动态路由(routerLink进行传参跳转)

十 React路由(react-router4.x): 动态路由get传值React中使用url模块