【mpvue】带参数跳转相同路由后,路由参数会获取错误
问题描述
假设页面A路径为/page/a/main?id=1
,页面A'路径为/page/a/main?id=2
。如果用户先跳转页面A,再跳转到页面A',之后返回页面A,此时,如果通过this.$root.$mp.query
获取页面路由参数的到的是2而不是1。
问题产生的原因
mpvue会把相同路由的页面视为同一份数据,也就是说当你前往页面A',mpvue不会创建新的页面对象,而是复用页面A,所以会把页面A的路由参数改为2,当用户返回A时得到的页面参数其实是被修改过的参数
解决方案
使用this.$root.$mp.page.options
获取页面参数