Angular2 rc1, new router and passing data

前端 未结 2 1107
星月不相逢
星月不相逢 2020-12-11 18:32

Used to have, with deprecated router, a few components that routed to the same component:

Some Component

import {Component, Injector         


        
相关标签:
2条回答
  • 2020-12-11 19:10

    Wait for Angular2 to add the data back. In my case, a service that decides which data service is needed could be injected via DI. I found that to be an overkill, it simply is a passing parameters just like it's in URL query strings. The only difference was that the parameter shouldn't be visible to user for a better experience.

    Source:

    http://www.github.com/angular/angular/issues/8515

    0 讨论(0)
  • 2020-12-11 19:32

    update

    RC.4 brings data back

    • Passing data using routes
    { path: 'parent/:id', data: {one: 1}, resolve: {two: 'resolveTwo'}}
    

    and access it using

    this.route.snapshot.data
    

    or

    this.route
          .data
          .subscribe(v => console.log(v));
    

    See also the Plunker at https://github.com/angular/angular/issues/9757#issuecomment-229847781

    original

    Parameters can be passed like:

    • with a router link
    <a [routerLink]="['/crisis-center', {bar: 'foo1'}]">Crisis Center</a>
    
    • with router.navigate()
    this.router.navigate(['/crisis-center', {bar: 'foo2'}]);
    

    Plunker example

    app/app.component.ts contains the links and code where parameters are passed, app/crisis-center/crisis-center.coomponent.ts contains the code where the parameter is read and written to the console.

    I don't think there is support for extra data anymore.

    0 讨论(0)
提交回复
热议问题