Vue--路由问题2

之前已经对router问题有了个简单的介绍,这里再明确一些使用过程中的router问题

本文介绍的主要还是vue2.x中的设置

在vue2.x中,如果路由发生变化,可以通过以下方式监测路由变化

watch:{
'$route':(to,from){
		this.id=to.param.id
}
}

路由导航

router-link用于控制路由的跳转

<router-link to="/normal">home</router-link>

<router-link :to="{name:'Home'}">home</router-link>

写名称的优势,当路径变更时可以还是用之前的路由名称

路由导航是用于控制路由跳转的

之前介绍过,激活路由的默认类是router-link-active,激活路由的样式,因此可以通过设置以下类
.router-link-active{}改变默认样式,也可以通过 active-class属性

<router-link :to="{name:'Home'}" active-class=“myClass”>home</router-link>

路由传参

传参方式1

this.$router.push({
name:'home',
params:{
param1,param2
}
})

传参方式2

<router-link :to="{name:'Home',params:{
param1:param1,
param2:param2
}">home</router-link>

获取路由参数

获取方式1

const {param1,param2}=this.$router.params

获取方式2

在路由文件中

{
    path: "/contry/:city/:user",
    component: Index
    props:true,//可以直接在props中获取参数
  },

路由视图

关于路由视图再做个简要说明

具名路由视图

<router-view name="sidebar"></router-view>

默认路由视图

<router-view"></router-view>

路由视图是用于展示具体的路由页面文件的

  {
    path: "/home",
    name:"Home",
    components: {
      default:Index,//默认router-view
      sidebar:Index//具名router-view
    }
  }

    <template>
      <div id="main">
          <div class="sidebar">
            <router-view name="sidebar"></router-view>
          </div>
          <div class="content">
            <router-view></router-view>
          </div>
      </div>
    </template>

并且通过以上方式非常容易设置页面的布局

设置每个路由的具体的控制

//设置进入路由前的操作
{
    path: "/contry/:city/:user",
    component: Index
    props:true,//可以直接在props中获取参数
beforeEnter(to,from,next){
          //to.params
          //next(false)是否跳转
    }
}

//设置离开路由前的操作
beforeRouteLeave(to,from,next){}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三知之灵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值