vue路由和window路由问题

1、vue路由原理:vue路由有两中模式,一种是hash,一种是history,通过mode进行设置,hash会链接上会带#号,history是正常链接

  hash: 利用url中的hash值进行页面的切换,实际不会请求后台接口,只改变hash值,通过hashchange监听hash值的变化,进行事件程序处理,包含向window.history内添加纪录,以便实现返回等操作。

  history: 利用html5提供的api,pushState和replaceState,这两个api可以改变url地址,但是不会发送请求。还有popstate,实现原理和hash相似,但是当用户主动刷新页面时还是会重新发送请求,所以这个需要后端人员把路由重定向到根页面。

 详情参考:https://www.cnblogs.com/tiedaweishao/p/9144531.html

 所以在实际vue应用中,本地的路由并不是线上真实的链接地址,$route/$router都是本地vue配置的路由对象,操作的不是线上链接。要操作链接还是需要使用window.location对象内部的属性。

猜你喜欢

转载自www.cnblogs.com/muzs/p/10735924.html