mounted中$route对象为空

页面进入时,根据当前路由信息,设置列表中元素的颜色

在mounted时是拿不到的,通过watch监听$route

 效果

 

`this.$route`对象是Vue Router提供的一个对象,它包含了当前路由的信息,包括路由参数、查询参数等。`this.$route.query`属性是`this.$route`对象的一个属性,用于获取当前路由的查询参数。在使用Vue Router时,你需要先正确引入和配置Vue Router,然后在组件使用`<router-link>`或者`this.$router`对象进行路由导航。例如,在Vue组件定义路由可以像下面这样: ```javascript import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) const routes = [ { path: '/user/:id', // 定义路由参数 name: 'User', component: User }, { path: '/product', // 定义无参数路由 name: 'Product', component: Product } ] const router = new VueRouter({ routes }) export default router ``` 在组件使用`<router-link>`进行路由导航,例如: ```html <router-link :to="{ name: 'User', params: { id: userId }}">User</router-link> <router-link :to="{ name: 'Product', query: { id: productId }}">Product</router-link> ``` 在组件获取当前路由的信息,例如: ```javascript export default { mounted() { console.log(this.$route.params.id) // 获取路由参数 console.log(this.$route.query.id) // 获取查询参数 } } ``` 需要注意的是,在组件获取路由信息时,需要在组件引入Vue Router并使用`this.$route`和`this.$route.query`属性。如果出现`this.$route`对象或`this.$route.query`属性未定义的情况,一般是因为Vue Router没有正确引入和配置,或者在组件没有正确使用Vue Router的相关属性和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值