Vue路由——ie上地址栏输入路由页面不更新

Vue路由——ie上地址栏输入路由页面不更新

情景:在ie11地址栏上直接输入路由,开发环境页面能正常刷新,在测试环境上不更新也不报错。测试环境在火狐、chrome浏览器地址栏上直接输入路由能正常更新页面。但是在App.vue中添加以下代码后,测试环境在ie11也能正常更新页面。

mounted () {
   if (!!window.ActiveXObject || 'ActiveXObject' in window) {
        window.addEventListener('hashchange', () => {
            let currentPath = window.location.hash.slice(1)
            if (this.$route.path !== currentPath) {
                this.$router.push(currentPath)
            }
        }, false)
    }
}

onhashchange事件ie8就已经支持了。
猜测可能是ie浏览器对hash路由的兼容性/更新做的并不好。

参考: https://www.jianshu.com/p/1e94f20f8672

你可能感兴趣的:(兼容性,vue.js,javascript)