mpvue-router-patch icon indicating copy to clipboard operation
mpvue-router-patch copied to clipboard

多开相同的Page后,点返回,router.query不对

Open maimake opened this issue 7 years ago • 5 comments
trafficstars

打开页面 : pages/xxx?id=1 然后 打开页面 : pages/xxx?id=2 然后 返回

this.$route.query 里还是id = 2

另外 router 的 beforeEach 能否也考虑设计下?跳转登录的,没有这个比较蛋疼

maimake avatar Jul 10 '18 08:07 maimake

希望作者能完成导航守卫的功能

laoboxie avatar Jul 19 '18 02:07 laoboxie

碰到类似的问题,返回再进入不同id的相同页面组件,computed里的id () {return this.$route.query.id}不会重新被计算

bravelincy avatar Aug 31 '18 07:08 bravelincy

其实挺好改的

增加了 const query = _$mp.page && _$mp.page.options;

const parseRoute = ($mp) => {
  const _$mp = $mp || {};
  const path = _$mp.page && _$mp.page.route;
  const query = _$mp.page && _$mp.page.options;
  return {
    path: `/${path}`,
    params: {},
    query,
    hash: '',
    fullPath: parseUrl({
      path: `/${path}`,
      query,
    }),
    name: path && path.replace(/\/(\w)/g, ($0, $1) => $1.toUpperCase())
  };
};

luckyyyyy avatar Sep 02 '18 21:09 luckyyyyy

请问这个问题有什么方法可以解决吗?我现在也遇到了,真坑。

zhoufanglu avatar Jun 25 '19 11:06 zhoufanglu

1、将业务逻辑改成重新获取数据,而不是重复跳转到相同界面。 2、如果一定要有返回,则改写返回的逻辑。 比如1->2->3,则在vuex中实现history,先将自己的3->2->1处理完成,然后才处理back()

mack-wang avatar Jun 26 '21 15:06 mack-wang