情景:在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]})
原文地址:https://www.cnblogs.com/hanzeng1993/p/12106175.html
时间: 2024-10-09 19:53:15