Friday 15 January 2021

Angular 6 - Get current route and it's data

 How to get current route you're in and get's it's data, children and it's parent?

say if this is the route structure:

const routesRoutes = [
    {path: 'home'component: HomeComponentdata: {title: 'Home'}},
    {
      path: 'about'
      component: AboutComponent
      data: {title: 'About'},
      children: [
        {
          path: 'company',
          component: 'CompanyComponent',
          data: {title: 'Company'}
        },
        {
          path: 'Hr',
          component: 'HrComponent',
          data: {title: 'HR'}
        },
        ...
      ]
    },
    ...
  ]
 

Below is the solution code:

@Component({...})
export class CompanyComponent implements OnInit {

constructor(
  private routerRouter,
  private routeActivatedRoute
) {}

ngOnInit() {
this.pageTitle = this.route.snapshot.data['title'];

  // Parent:  about 
  this.route.parent.url.subscribe(url => console.log(url[0].path));

  // Current Path:  company 
  this.route.url.subscribe(url => console.log(url[0].path));

  // Data:  { title: 'Company' } 
  this.route.data.subscribe(data => console.log(data));

  // Siblings
  console.log(this.router.config);
}
}

Passing data between routes using State



0 comments:

Post a Comment

Topics

ADFS (1) ADO .Net (1) Ajax (1) Angular (43) Angular Js (15) ASP .Net (14) Authentication (4) Azure (3) Breeze.js (1) C# (47) CD (1) CI (2) CloudComputing (2) Coding (7) CQRS (1) CSS (2) Design_Pattern (6) DevOps (4) DI (3) Dotnet (8) DotnetCore (16) Entity Framework (2) ExpressJS (4) Html (4) IIS (1) Javascript (17) Jquery (8) Lamda (3) Linq (11) microservice (3) Mongodb (1) MVC (46) NodeJS (8) React (11) SDLC (1) Sql Server (32) SSIS (3) SSO (1) TypeScript (1) UI (1) UnitTest (1) WCF (14) Web Api (15) Web Service (1) XMl (1)

Dotnet Guru Archives