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]
})
posted @ 2019-12-27 10:57  韩增  阅读(670)  评论(0编辑  收藏  举报