在iphoneX及以上版本,外部链接返回不触发事件,7P,7没发现这个bug,安卓自测没发现这个问题最近在项目中发现了一个问题。iphoneX及以上版本从当前vue应用跳转到外部链接,然后返回到vue应用,没有触发beforeRouterEnter。由于在其他手机上测试都没有问题,一开始以为是代码有问题,然后开始了漫漫长路找坑。后来我把事件放在created和mounted里面,并没有执行代码,证明可能是页面被缓存了,所以没有触发这些hook。于是百度了一下,找到了onpageshow事件。onpageshow事件在用户浏览网页时触发。onpageshow事件类似于onload事件,onload事件在页面第一次加载时触发,onpageshow事件在每次加载页面时触发,即页面加载时不触发onload事件从浏览器缓存中读取。即当页面显示在前台时,会触发pageshow事件,所以我在created中注册了这个事件,并编写了要执行的代码。再次在真机上调试后,发现这个问题解决了。created(){window.addEventListener('pageshow',()=>{//外链返回vue应用要执行的代码})}记录一下,以免以后再次跳坑
