Rumah > Soal Jawab > teks badan
router.replace(self.frompage);
window.location.reload();
这是一个删除功能,删除结束后需要回到上一个页面并刷新。
第一行代码是回到上个页面,这个没问题。
可第二行代码在ios(微信)上不执行,直接忽略掉了,咋搞啊各位大神,急急急!
PHP中文网2017-04-11 12:01:51
谢邀,会不会是不支持这个reload方法。下面这样可以吗?
window.location.href = window.location.href //当前页面url
天蓬老师2017-04-11 12:01:51
问题根本原因是微信浏览器的,与vue关系不大。
代码其实没什么问题,window.location.reload();
重载页面,正常浏览器都会重载。
但是微信浏览器会专门检查一次你的url是否有变化,因为你重载的还是源地址,所以微信浏览器就不刷新。而且最为可恶的是有部分机型在部分状态下还能刷新。
比较狗血的解决办法就是在当前url上随便加个get参数,比如时间戳。
迷茫2017-04-11 12:01:51
既然是 SPA 项目,不知道数据是不是通过 ajax 获取,有没有使用 vuex 进行集中状态管理,如果前面两个问题的答案都是 true,感觉发起重新获取数据的 ajax 请求更合理吧