在iphoneX及以上版本从外链回退不触发事件,7P,7没发现这个bug
安卓上自测没有发现这个问题
最近做项目中发现了一个问题,iphoneX及以上版本从当前vue应用中跳转到外部链接然后在回退到vue应用里面,beforeRouterEnter没有被触发。
由于在其他手机上测试没有问题,所以一开始我以为代码写的有问题,然后就开始漫长的找坑之路,后来我将事件放到了created、mounted里面也没有执行代码,那就证明有可能页面被缓存了,所以这些钩子没有触发。
所以百度了一下,找到了onpageshow这个事件
onpageshow 事件在用户浏览网页时触发。
onpageshow 事件类似于onload事件,onload 事件在页面第一次加载时触发, onpageshow 事件在每次加载页面时触发,即 onload 事件在页面从浏览器缓存中读取时不触发。
也就是当页面显示到前台的时候就触发pageshow这个事件,所以我就在created里面注册了这个事件并将要执行的代码写进去,再次真机调试之后发现解决这个问题了。
created () {
window.addEventListener('pageshow', () => {
//外链回退到vue应用要执行的代码
})
}
记录下来避免以后再次跳坑
简而言之,外链是一个存在于自己网站之外的链接,可以跳转到自己的网站。为了及时包含新内容,搜索引擎蜘蛛总是抓取互联网中的链接。通过外部链,蜘蛛可以直接引导他们的蜘蛛爬行自己的网站
网站内链就是本网站内部页面之间的链接。最通俗的说法是自己在自己的网站上添 加链接,就是在同一网站域名下的各内容页面间的互相链接。外链就是指在别的网站导入自己网站的链接。
今天给大家分享一个 Web 知识点。如果你有过一段时间的 Web 开发经验,可能已经知道了。不过对于刚接触的新手来说,还是有必要了解一下的。我们知道,网页里的a标签默认在当前窗口跳转链接地址
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!