2016-08-09 154 views
0

Angular 2 rc.4angular2 dynamische Routen Laufzeit Komponente Import

Ich habe dynamische Routen JSON in Routen Variable definiert. Problem habe ich nur mit Komponenten.Ich muss immer noch alle Komponenten importieren importieren Anweisung und haben sie in der Spitze der Datei, um sie zu verwenden, die tatsächlich den Zweck des dynamischen Routing tötet.

Ich habe einige Beispiele gesehen, in denen Leute, die versuchen, System.import ('component_file_name') auszuführen, die AsyncRoute verwenden, bereits veraltet sind. seine Show Stopper irgendwie jede Anregung Lösungen im Voraus geschätzt

import { Component } from '@angular/core'; 
import { ROUTER_DIRECTIVES, Router, RouterConfig } from '@angular/router'; 
import {IncComponent} from './inc.component'; 
import {AdditionComponent} from './addition.component'; 
import {RomanComponent} from './roman.component'; 
declare var System:any; 

import {AjaxRequestService} from './ajax.req.service'; 

@Component({ 
    selector: 'app', 
    templateUrl:'app/app.html', 
    providers: [ 
     AjaxRequestService, 
    ], 
    directives: [ROUTER_DIRECTIVES] 
}) 

export class AppComponent { 

    constructor(private router: Router){ 

    let routes: RouterConfig = [ 
      { 
       path: 'increment', 
       component: IncComponent 
      },{ 
       path: 'adder', 
       component: AdditionComponent 
      },{ 
       path: 'roman', 
       component: RomanComponent 
      } 

     ]; 

     router.resetConfig(routes); 
    } 

    title = 'Angular 2 Demo Applications'; 
} 

Antwort

0

Sie loadChildren wie

{ path: 'heroes', loadChildren: 'app/hero/hero.module' } 

Siehe auch angular2 rc.4 layz routing

+0

router.resetConfig (routeConfigArr); es dauert routeConfig Array und roueConfig hat keine Eigenschaft loadChildren, wie ich zur Arbeit gehe –

+0

'RouteConfig' tut nicht die Routen, die zu' RouteConfig' hinzugefügt wurden. –

+0

Entschuldigung, ich habe nicht bekommen, dass Sie bitte ein wenig mehr ausarbeiten –

0

verwenden kann ich RC5 Version mit Ihnen zu teilen: http://plnkr.co/edit/18CZVF?p=preview

Nach der Verwendung von AppModule ist loadChildren immer noch dasselbe wie:

{ path: 'heroes', loadChildren: 'app/hero/hero.module' } 
+0

http://pnnr.co/edit/nm5m7N?p=preview –