angular2中state.path和route.path之间的区别是什么

时间:2017-01-04 08:51:48

标签: angular

在阅读angular2 documnet时,我对CanLoad param感到困惑,

https://angular.io/docs/ts/latest/guide/router.html

在CanLoad部分,当CanActivate使用state.url时,它使用/${route.path}

canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
    let url: string = state.url;

    return this.checkLogin(url);
}

canLoad(route: Route): boolean {
  let url = `/${route.path}`;

  return this.checkLogin(url);
}

有什么区别?为什么不直接使用route.path,而是用`/ $ {}包装?

1 个答案:

答案 0 :(得分:0)

  

区别是什么?为什么不直接使用route.path,而是用/${}包裹?

`/${route.path}`;

只是使用字符串插值为route.path添加/

前缀

${route.path}route.path的结果取代。 如果route.path返回foo/bar,则结果为/foo/bar