4-2.vue-router的两种模式:hash和history
vue项目是一个单页面的富应用。就是整个项目只有一个html,通过js来处理相关的事情。在进行页面的交互时,整个页面是不会刷新的。实现该效果就是通过上面的两种方式
hash模式
hash模式是url里面包含#,改变#后面的hash值不会去向服务器发送请求,也就不会刷新整个页面。通过vue-router这个前端路由绑定该hash值和组件,监听hash值得变化去展示不同的组件内容。
测试方式:location.hash = ‘aaa’
history模式
history模式是html5标准发布的。他是通过以下三个方法去实现上面和hash一样的效果
- pushState():向浏览器历史记录栈里面进行入栈操作
- back():返回浏览器历史记录栈里面上一个入栈操作,与pushState()是配合使用的。其效果是可以前进和后退
- replaceState();替换当前的url,不进行入栈操作,与pushState()的区别就是没有返回操作。