问题描述
有一个页面是需要重用组件的,左边是商品列表,右边是商品详细信息,当我点击左边的列表时,右边将会显示相应的信息,我使用动态路由做的,现在的问题是点击列表,地址栏的路由参数并不会发生变化,而实际上他已经变化了,,
问题出现的环境背景及自己尝试过哪些方法
在没有加上ajax请求之前,点击左边列表,地址栏的路由参数是会变化的,但是加上了请求之后,左边点击,地址栏参数就不会变化了,控制台不报错,我用路由守卫监听,实质上路由参数已经发生改变,但是没有在地址栏动态的展示出来,路由参数一直是页面初始化的参数。。。
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
路由定义:
`
{
path: '/currency',
component: resolve => require(['@/pages/currency_exchange'], resolve),
children:[
{
path: '/',
redirect: 'coin_main/00',
component: resolve => require(['@/pages/currencyExchange/index.vue'],resolve)
},
{
path: 'coin_main/:id',
component: resolve => require(['@/pages/currencyExchange/index.vue'],resolve)
}
]
},
`
这个时候点击列表,动态参数id应该会改变,但是不会变了。
我用的beforeRouterUpdate处理的,业务逻辑能够正常响应:
beforeRouteUpdate(to, from, next) {
this.init(to.params.id);
this.initTable(to.params.id);
clearInterval(this.enter);
clearInterval(this.update);
clearInterval(this.routerUpdate);
//定时刷新
this.routerUpdate = setInterval(()=> {
this.initTable(to.params.id);
},5000);
this.status = this.$store.state.get;
},
你期待的结果是什么?实际看到的错误信息又是什么?
期待的结果是点击左边的列表,地址栏的路由参数id能够响应变化。控制台不报错。
next() ?