Angular 2(RC 4)-ルーティングとナビゲーション
3508 ワード
基礎知識
1.
ほとんどのルーティング付きアプリケーションはindexにある.htmlの
1.
ほとんどのルーティング付きアプリケーションはindexにある.htmlの
.
2.
import { ROUTER_DIRECTIVES } from '@angular/router';
3.
“ ” provideRouter
ファクトリ ([provideRouter(routes)]
)は、このアプリケーションを するために される.
app.routes.ts
import { provideRouter, RouterConfig } from '@angular/router';
const routes: RouterConfig = [
{ path: 'crisis-center', component: CrisisCenterComponent },
{ path: 'heroes', component: HeroListComponent },
{ path: 'hero/:id', component: HeroDetailComponent },
{ path: '**', component: PageNotFoundComponent }
];
export const appRouterProviders = [
provideRouter(routes)
];
RouterConfig
は、ナビゲーション を するルーティング です. Routeは、1つのURLのpath
を1つのコンポーネントにマッピングします.path
はスラッシュ/
の を できません.ルータはURLを して します.
3 のルーティングのid
は、ルーティングパラメータのtokenである.
4 の のうちの**
は、 が
であることを す. 、 たちが したパスのいずれかに しない 、ルータはswitch
のdefault
に ています.404ページを する がある 、この は に である.
されたroutes
をprovideRouter()
に し、この は されたRouterサービスプロバイダに ります.
に、appRouterProviders
を してプロバイダを し、main.ts
においてルータ を に する.main.ts
のbootstrap
にルータのプロバイダを します.
main.ts // main entry point
import { bootstrap } from '@angular/platform-browser-dynamic';
import { AppComponent } from './app.component';
import { appRouterProviders } from './app.routes';
bootstrap(AppComponent, [
appRouterProviders
])
.catch(err => console.error(err));
4.
の が すると、URLが/heroes
になると、ルータはpath
がheroes
のRoute
に し、ホストビューの
にHeroListComponent
コンポーネントが される.
5. [routerLink]
ラベルにrouterLink
を し、 たちのルーティングのpath
に にバインドすることができます.routerLink
が をバインドしたい 、ルーティングリンク を すことができるテンプレート にバインドすることができます.ルータは にこの をURLとコンポーネントビューに します.
また、
にrouterLinkActive
を して、 するrouterLinkがアクティブになったときに がCSSクラスを または することもできます.このコマンドは、エレメントに することも、 エレメントに することもできます.
AppComponentテンプレートtemplate: `
Component Router
`,
6.ルータの
ナビゲーションのライフサイクルが すると、ルータはActivatedRoute
からなるツリーを し、ルータの の を します. のRouter
にアクセスするには、アプリケーション のrouterState
サービスおよびそのRouterState
を することができます.
7.ROUTER_DIRECTIVES RouterLink
、RouterLinkActive
、およびRouterOutlet
は、ROUTER_DIRECTIVES
の における であるので、@Component
メタデータにdirectives
を み む がある.directives: [ROUTER_DIRECTIVES]
この が きなら、いいねやコレクションをしてください. のもっと くの を たいなら、 に してください.