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]
})
原文地址:https://www.cnblogs.com/hanzeng1993/p/12106175.html