2016-07-25 12 views
4

Ich habe das Angular-Cli-Tool verwendet, um meine Routen zu erstellen. Es macht einen Ordner mit einem + vor ihm heißtAngular 2 Kind Routen

  • +dashboard
  • +document

ich nicht herausfinden kann, wie man ein Kind Weg zu machen, das Winkel-cli-Tool. Das ist wirklich egal, aber ich würde es vorziehen, in meiner Antragsstruktur eine Vereinbarung zu treffen, um eine Kinderroute zu beschreiben.

Also was mache ich?

Sehe ich wie dieser

  • app\+document\+chapter

Ist es besser zu tun, um diese Art der Sache

  • app\+document
  • app\+chapter
  • einen Ordner unter dem übergeordneten Route setzen

Darüber hinaus bin ich ein wenig verwirrt über Routen im Allgemeinen. Mein Verständnis ist, dass es eine veraltete Route und eine neue Route gab. Ich denke, ich benutze das neue System, wie es mit dem eckigen Werkzeug erzeugt wurde. Jedenfalls verschachtelte ich mehrere Ebenen von Kinderrouten. Und ich habe mich gefragt, ob das echt aussieht.

@Routes([ 
    { path: '/', component: DashboardComponent }, 
    { path: '/document/:id', component: ReaderComponent, 
     children: [ 
      { path: '', redirectTo: 'chapter/0', pathMatch: 'full' }, 
      { path: 'chapter/:id', component: ChapterComponent, 
      children: [ 
       { path: '', redirectTo: 'para/0', pathMatch: 'full' }, 
       { path: 'para/:id', component: ParagraphComponent } 
      ]} 
     ] 
    } 
]) 

So http://my-url/document/1 sollte mich http://my-url/document/1/chapter/0/para/0 nehmen Ist dies der beste Weg, dies zu tun? Ich mag es, weil es Deep-Linking usw. erlaubt. Es scheint auch RedirectTo funktioniert nicht.

Aber ich bin ein bisschen neu auf all das, und ich bin zu wollen mein Anwendungsdesign als ‚konventionellen‘ wie möglich

Antwort

1

halten Es scheint, Ihnen gemischtes Material aus verschiedenen inkompatiblen Router-Versionen. @Routes() stammt von einer älteren Routerversion, aber Ihre Routenkonfiguration ist für die neueste Routerversion.

Weitere Informationen zum Konfigurieren des neuen Routers finden Sie unter https://angular.io/docs/ts/latest/guide/router.html#!#route-config.