在IE11浏览器中,router-link的跳转是失效的,主要是因为当url的hash变化的时候,浏览器没有做出相应的反应。这时候需要做一个兼容处理,当浏览器是IE11时手动给url加一个hashChange事件。

办法一:

new Vue({
	el: '#app',
	router,
	components: {
		App
	},
	template: '<App/>',
	render: function(createElement) {
		if ('-ms-scroll-limit' in document.documentElement.style && '-ms-ime-align' in document.documentElement.style) {
			window.addEventListener('hashchange', () => {
				var currentPath = window.location.hash.slice(1)
				if (this.$route.path !== currentPath) {
					this.$router.push(currentPath)
				}
			}, false)
		}
		return createElement(App);
	}
})

 

Logo

前往低代码交流专区

更多推荐