angular2系统学习 - 路由与导航(1)基础篇

angular2系统学习 - 路由与导航(1)基础篇

本篇内容主要学习路由与导航的基础知识。

1.base href

如果app文件夹是应用的根目录,则在index.html的head中加入
<head>
    <base href="/">
    ...
<head>

2.AppModule配置

2.1引用路由
import { RouterModule, Routes } from '@angular/router';
2.2路由数组
appRoutes: Routers = [
{path: 'pathA',component: AComponent},
{path: 'pathB/:id', component: BComponent},
{
    path: 'pathC',
    component: CComponent,
    data: {
      proName: 'proValue'
    }
  },
{path: '', redirectTo:'pathA', pachMatch: 'full'},
{path: '**', PageNotFoundComponent}
]
注意:path不能以'/'开头。否则无法解析url
2.3NgModule添加路由
@NgModule([
  imports:[
    ...
    RouterModule.forRoot(appRoutes)
    ],
    ...
])
2.4路由插座
<router-outlet></router-outlet>
!<--此处呈现component-->
2.5路由器链接
<a routerLink="/pathA" RouterLinkActive="cssClassName">Link</a>
2.5.1带令牌的路由器链接
- <a [routerLink]="['/hero',14]" [routerLinkActive]="active"></a>
- <a routerLink="/hero/14" routerLinkActive="active"></a>
- this.router.navigate(['/hero',14]);

小结

路由器接口

路由器部件含义
Router(路由器)为激活的URL显示应用组件。管理从一个组件到另一个组件的导航
RouterModule(路由器模块)一个独立的Angular模块,用于提供所需的服务提供商,以及用来在应用视图之间进行导航的指令。
Routes(路由数组)定义了一个路由数组,每一个都会把一个URL路径映射到一个组件。
Route(路由)定义路由器该如何根据URL模式(pattern)来导航到组件。大多数路由都由路径和组件类构成。
RouterOutlet(路由插座)该指令()用来标记出路由器该在哪里显示视图。
RouterLink(路由链接)该指令用来把一个可点击的HTML元素绑定到路由。 点击带有绑定到字符串或链接参数数组的routerLink指令的A标签就会触发一次导航。
RouterLinkActive(活动路由链接)当HTML元素上或元素内的routerLink变为激活或非激活状态时,该指令为这个HTML元素添加或移除CSS类。
ActivatedRoute(激活的路由)为每个路由组件提供提供的一个服务,它包含特定于路由的信息,比如路由参数、静态数据、解析数据、全局查询参数和全局碎片(fragment)。
RouterState(路由器状态)路由器的当前状态包含了一棵由程序中激活的路由构成的树。它包含一些用于遍历路由树的快捷方法。
链接参数数组这个数组会被路由器解释成一个路由操作指南。我们可以把一个RouterLink绑定到该数组,或者把它作为参数传给Router.navigate方法。
路由组件一个带有RouterOutlet的Angular组件,它根据路由器的导航来显示相应的视图。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值