前端路由的实现方式
前端路由和后端路由
前端路由: 不同的路由显示不同的页面 后端路由: 不同的路由请求不同的接口
Hash路由
url后#加后续内容, 如: http://localhost:3000/#hash
由于 hash 值的变化不会导致浏览器像服务器发送请求,改变hash不会加载页面, 因此可以通过Onhashchange来监听路由改变从而改变相应的页面内容
History路由
html5新增了两个API,history.pushState()和history.replaceState(),这两个API都会操作浏览器的历史记录堆栈,通过这种方式不会引起页面的刷新。但是这种情况下并没有向onhashchange那么好用的方法来监听url的改变。