1 import Router
1
|
import {RouteConfig,
RouterOutlet, RouterLink, routerInjectables} from 'angular2/router' ; |
2 setting your RouteConfig
1
2
3
4
5
|
@RouteConfig([ {path: '/' ,
component: List, as: 'list' }, {path: '/about' ,
component: Add, as: 'add' }, {path: '/help' ,
component: Help, as: 'help' } ]) |
3 inject your router directives into view directives for the directive [router-link] and [router-outlet]
1
2
3
4
|
@View({ templateUrl: './app.html?v=<%=
VERSION %>' , directives:
[RouterOutlet, RouterLink] }) |
4 in the UI
1
2
3
4
5
6
7
8
|
< section class="sample-app-content"> < nav > < a [router-link]="['/list']">List</ a > < a [router-link]="['/add']">Add</ a > < a [router-link]="['/help']">Help</ a > </ nav > < router-outlet ></ router-outlet > </ section > |
5 inject your router into app
1
|
bootstrap(App,
[routerInjectables, httpInjectables]); |
6 the whole page code including http demo(app.ts)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
///
<reference path="../typings/tsd.d.ts" /> import {Component,
View, bootstrap, NgFor} from 'angular2/angular2' ; import {RouteConfig,
RouterOutlet, RouterLink, routerInjectables} from 'angular2/router' ; import {httpInjectables,
Http} from 'angular2/http' ; import {Inject}
from 'angular2/di' ; import {List}
from './components/list/list' ; import {Add}
from './components/add/add' ; import {Help}
from './components/help/help' ; import {FriendList}
from './services/FriendList' ; @Component({ selector: 'app' , viewInjector:
[FriendList, httpInjectables] }) @RouteConfig([ {path: '/' ,
component: List, as: 'list' }, {path: '/about' ,
component: Add, as: 'add' }, {path: '/help' ,
component: Help, as: 'help' } ]) @View({ templateUrl: './app.html?v=<%=
VERSION %>' , directives:
[RouterOutlet, RouterLink] }) class App
{ http:Http; status:int; constructor(@Inject(Http)
http) { this .http
= http; //this.http.request('data/test.json').observer(res
=> this.dataList = res.json()); this .http.get( 'test.json' ).toRx().subscribe((res:Response)
=> { this .status
= res.status; }); } } bootstrap(App,
[routerInjectables, httpInjectables]); |