vue路由的两种方式的实现原理

1.hash模式:这里的模式,主要是,我们可以通过,window.location.hansh.,获取这个hash值,可以监听window.onhanshchange事件,在hansh的值,发生改变的时候执行不同地逻辑。

2.history模式,主要是根据html5最新的api,我们可以通过,包括了pushState,replaceState两个方法,这两个方法接收三个参数:stateObj,title,url

history.pushState({color:'red'}, 'red', 'red'})

window.onpopstate = function(event){

//这里是获取事件中的转态就是历史路由保持地实例

  console.log(event.state)

  if(event.state && event.state.color === 'red'){

    document.body.style.color = 'red';

  }

}

//这里是后退

history.back();

//这里是前进

history.forward();

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。