2022/9/5 嵌套路由(靠路由在vue里渲染套渲染),动态路由匹配以及开启propos配置动态路由

嵌套路由

通过路由实现组件的嵌套展示

在about内嵌套路由

<template>
  <div class="about-container">
    <h3>About 组件</h3>
    <!-- 子级路由链接 -->
    <router-link to="/about/tab1">tab1</router-link>
    <router-link to="/about/tab2">tab2</router-link>
    <hr>
    <!-- 子级路由占位符 -->
    <router-view></router-view>
  </div>
</template>

 在router的indexjs(包含重定向)

{path : '' , component : Tab1}, 为默认子路由可以不使用重定向,

使用默认子路由可以将 <router-link to="/about">tab1</router-link> about后省略

import Vue from "vue";
import VueRouter from "vue-router";
import Home from '../components/Home.vue'
import Movie from '../components/Movie.vue'
import About from '../components/About.vue'
import Tab2 from '../components/tabs/Tab2.vue'
import Tab1 from '../components/tabs/Tab1.vue'

Vue.use(VueRouter)

const router = new VueRouter({
  //router是一个数组,定义hash地址和组件之间的关系
  routes : [
    //重定向路由规则
    {path : '/', redirect :'/home'},
    {path : '/home', component:Home},
    {path : '/movie', component:Movie},
    {path : '/About', component:About , children : [  
        {path : '' , component : Tab1},
        {path : 'tab2' , component : Tab2} 
  ]}
  ]
})
export default router

动态路由匹配 

 this.$route是路由的参数对象

this.$router是路由的导航对象

APP.vue

    <router-link to="/movie/1">洛基</router-link>
    <router-link to="/movie/2">雷神</router-link>
    <router-link to="/movie/3">蜘蛛侠</router-link>

router内index.js

  //需求:在movie组件中,根据id值展示对应详情信息
    {path : '/movie/:id', component:Movie},

为路由器开启props传参 

router的index

{path : '/movie/:mid', component:Movie , props:true},

 movie.vue

<script>
export default {
  name: 'Movie',
  //接受props数组
  props : ['mid'],
  methods : {
    shouTimes(){
      console.log(this)
    }
  }
}
</script>

   <!-- 在哈希地址中 / 后面的参数项叫路径参数 -->

    <!-- 在路由参数对象中使用this.$route.params来访问 -->

    <!-- 在哈希地址中 ? 参数是 查询参数 -->

    <!-- 在路由 参数对象 中,需要使用this.$route.query来访问查询参数 -->

    <!-- 在this.$route中path只是路径部分,full.path才是完整 -->

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值