2016-03-23 19 views
0

角度2のルーティングを学習しようとしていますが、ここで表示される子コンポーネントのテンプレートを取得できません。私は、次の2つのページAngular2ルーティング - 子テンプレートが表示されない

page1.tsここ

import {Component} from 'angular2/core'; 

@Component({ 
    selector: "page1", 
    template: `page 1 goes here.` 
}) 
export class Page1Cmp{} 

page2.ts

import {Component} from 'angular2/core'; 
import {RouterLink,RouteConfig} from 'angular2/router'; 
import {ChildCmp} from './child'; 

@Component({ 
    selector: "page2", 
    template: `Hello its page 2 
    <router-outlet></router-outlet>` 
}) 
@RouteConfig([ 
    {path: "/", component: ChildCmp, name: "Child", useAsDefault: true} 
    ]) 
export class Page2Cmp{} 

を持っpage2.tsルート

しようとしている子コンポーネントであります

child.ts

私はPAGE2へのルート、私はのテンプレートが表示されない場合は
import {Component} from 'angular2/core'; 

@Component({ 
    selector: "child", 
    template: `child content goes here.` 
}) 
export class ChildCmp{} 

この子コンポーネントがここPAGE2 に表示されていないが

app.ts

import {Component} from "angular2/core"; 
import {bootstrap} from "angular2/platform/browser"; 
import {ROUTER_DIRECTIVES, RouteConfig, ROUTER_PROVIDERS} from "angular2/router"; 
import {Page1Cmp} from './page1'; 
import {Page2Cmp} from './page2'; 

@Component({ 
    selector: "app", 
    template: `<a [routerLink]="['Page1']">Page1</a> | <a [routerLink]="['Page2']">Page2</a> 
    <router-outlet></router-outlet> 
    `, 
    directives: [ROUTER_DIRECTIVES] 
}) 
@RouteConfig([ 
    {path: "/page1", name: "Page1", component: Page1Cmp, useAsDefault: true}, 
    {path: "/page2/...", name: "Page2", component: Page2Cmp} 
]) 
class MyApp{} 

bootstrap(MyApp, [ 
    ROUTER_PROVIDERS 
]); 

ルートコンポーネントでありますchild.tsコンポーネント。 I plunker here

答えて

0

plunker

import {RouterLink,RouteConfig,ROUTER_DIRECTIVES} from 'angular2/router'; 

@Component({ 
    selector: "page2", 

    directives: [ROUTER_DIRECTIVES], 
    //add this and it will start working as expected. 

    template: `<br>Hello its page 2<br> 
    <router-outlet></router-outlet>` 
}) 
の再生産の問題
関連する問題