什么时路由
路由就是分发请求的对象,前端路由主要是通过url的变化来渲染不同的内容,路由可以分为三种模式:hash、history、memory。
路由的三种模式
hash模式
hash模式在任何情况下都能使用,但是hash对SEO不友好。
跟在#号后面的所有字符都不会请求到服务器上,也就是说不论你访问baidu.com/#...,都会被认为是访问baidu.com。
google出了一种方式hashbang能够让服务求收到hash的请求,前提是需要在#号前面加上!号。类似于:baidu.com!#aaa
虽然这种方法是可行的但是依然不能和以前的SEO相比
history模式
后端将所有的内容都渲染到同一个页面的时候可以使用history模式。
IE8以下不支持
memory模式
把路径存在localstronge中,需要切换路由的是由就去localstronge中获取。改变路径的时候就将路径存在localsstronge中。url中的路径是不会改变的。
由于路径是不会改变的,这就导致复制出来的路径是默认的路径,这种方式只在单击中有效。
总结
hash模式和history模式都是通过路径来进行路由到不同的内容。
只不过hash模式使用的是哈希,history模式使用的路径。
memory模式是将路径存储在localstronge中,路径就不会显示在url中无法,这导致分享页面前端一般不会使用这种模式。