hash模式

1、vue-router默认是hash模式
2、url中有“#”号
3、hash值(“#”后的值)不会被包含在http请求中,改变hash值不会引起页面的重新加载。
4、hash改变会触发hashChange事件,会被浏览器记录下来,可以使用浏览器的前进和后退。
5、hash兼容到IE8以上
6、 会创建hashHistory对象,在访问不同的路由的时候,会发⽣两件事:

  • HashHistory.push()将新的路由添加到浏览器访问的历史的栈顶
  • HasHistory.replace()替换到当前栈

history模式

1、url不带参数
2、history 兼容 IE10 以上
3、history 模式需要后端配合将所有访问都指向 index.html,否则用户刷新页面,会导致 404 错误
4、在HTML4中常用的方法:

  • history.forward():在历史记录中前进一步
  • history.back():在历史记录中后退一步
  • history.go(n):在历史记录中跳转n步骤,n=0为刷新本页,n=-1为后退一页。

5、HTML5中新增了

  • history.pushState(data[,title][,url]):向历史记录中追加一条记录
  • history.replaceState(data[,title][,url]):替换当前页在历史记录中的信息
  • history.state:是一个属性,可以得到当前页的state信息。
  • window.onpopstate:是一个事件,在点击浏览器后退按钮或js调用forward()、back()、go()时触发。监听函数中可传入一个event对象,event.state即为通过pushState()或replaceState()方法传入的data参数
Logo

前往低代码交流专区

更多推荐