vue router跳转后,后面的代码不执行怎么办(就水果机有问题)

router.replace(self.frompage);
window.location.reload();

这是一个删除功能,删除结束后需要回到上一个页面并刷新。

第一行代码是回到上个页面,这个没问题。

可第二行代码在ios(微信)上不执行,直接忽略掉了,咋搞啊各位大神,急急急!

阅读 6.4k
3 个回答

谢邀,会不会是不支持这个reload方法。下面这样可以吗?
window.location.href = window.location.href //当前页面url

问题根本原因是微信浏览器的,与vue关系不大。

代码其实没什么问题,window.location.reload();重载页面,正常浏览器都会重载。

但是微信浏览器会专门检查一次你的url是否有变化,因为你重载的还是源地址,所以微信浏览器就不刷新。而且最为可恶的是有部分机型在部分状态下还能刷新。

比较狗血的解决办法就是在当前url上随便加个get参数,比如时间戳。

既然是 SPA 项目,不知道数据是不是通过 ajax 获取,有没有使用 vuex 进行集中状态管理,如果前面两个问题的答案都是 true,感觉发起重新获取数据的 ajax 请求更合理吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题