定义
路由策略决定angular将使用URL的那一部分来和路由配置项的path属性进行匹配。
HashLocationStrategy(常用)
概念:Angular常见的策略,原理时利用了浏览器在处理Hash部分的两个特性
第一:浏览器向服务器发送请求时不会带上hash部分内容
第二:更改URL的hash部分不会向服务器重新发送请求,这使得在进行跳转的时候不会引发页面的刷新和 应用的重新加载。
第三:通过将LocationStrategy类绑定到新的策略实例,可以改变应用的定位策略
浏览器URL:
http://locahost:3000/#/list
import {HashLocationStrategy,HashLocationStrategy } from ‘@angular。common’;
// ... ...
providers:[
{ providers:HashLocationStrategy,useClass:HashLocationStrategy }
]
PathLocationStrategy(默认)
概念:使用URL的path部分来进行路由匹配,因此与HashPathLocationStrategy不同之处在于,浏览器会将配置对应的URL原封不动的发给服务器。作为Angular的默认路由策略,其最大的优点在于为浏览器渲染提供了可能。各个页面请求同一个URL时,导致服务器无法通过URL得知所要访问的页面,也就无法进行渲染。(略)