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

Posted hanzeng1993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue路由-ie上地址栏输入路由页面不更新相关的知识,希望对你有一定的参考价值。

情景:在ie11地址栏上直接输入路由,开发环境页面能正常刷新,在测试环境上不更新也不报错。测试环境在火狐、chrome浏览器地址栏上直接输入路由能正常更新页面。但是在App.vue中添加以下代码后,测试环境在ie11也能正常更新页面。
闲话不多说,上代码:
const IE11RouterFix = {
methods: {
hashChangeHandler: function() { this.$router.push(window.location.hash.substring(1, window.location.hash.length)) },
isIE11: function() { return !!window.MSInputMethodContext && !!document.documentMode }
},
mounted: function() { if (this.isIE11()) { window.addEventListener(‘hashchange‘, this.hashChangeHandler) } },
destroyed: function() { if (this.isIE11()) { window.removeEventListener(‘hashchange‘, this.hashChangeHandler) } }
}

new Vue({
el: ‘#app‘,
router,
store,
render: h => h(App),
mixins: [IE11RouterFix]
})

以上是关于Vue路由-ie上地址栏输入路由页面不更新的主要内容,如果未能解决你的问题,请参考以下文章

Vue中解决路由切换,页面不更新的实用方法

vue路由原理

vue刷新当前路由:router-view 复用组件时不刷新的3种解决方案总结

VUE刷新丢失路由的解决方法

2种方式解决vue路由跳转未匹配相应路由避免出现空白页面或者指定404页面

vue 路由参数变化,页面不更新的问题