Angular-ում երթուղու պարամետրերի արժեքները կոմպոնենտում

Մեր երթուղիներում սահմանված պարամետրերի արժեքները կարելի է ստանալ կոմպոնենտի դասում: Տեսնենք, թե ինչպես կարելի է դա անել: Ենթադրենք, մենք ունենք հետևյալ երթուղին՝ պարամետրերով.

app/app.routes.tsconst routes: Routes = [
  { path: 'aaaa/:id', component: AaaaComponent },
  { path: 'bbbb', component: BbbbComponent },
];

Եկեք ստանանք այս պարամետրի արժեքը կոմպոնենտի դասում: Այստեղ պետք է ուշադրություն դարձնել, որ երթուղու պարամետրերի արժեքները կարելի է ստանալ միայն այն կոմպոնենտում, որը կապված է երթուղու հետ: Մեր դեպքում երթուղու հետ կապված է Aaaa կոմպոնենտը: Ուստի հաջորդիվ կաշխատենք դրա հետ:

Այսպիսով, երթուղու պարամետրերի արժեքները ստանալու համար անհրաժեշտ է օգտագործել ActivatedRoute սերվիսը: Եկեք այն ներմուծենք մեր կոմպոնենտում.

app/aaaa/aaaa.component.tsimport { ActivatedRoute} from "@angular/router";

Ներմուծենք սերվիսը կոնստրուկտորում.

app/aaaa/aaaa.component.tsexport class AaaaComponent {
  constructor(private activateRoute: ActivatedRoute) {
    
  }
}

Ստանանք պարամետրերի օբյեկտը.

app/aaaa/aaaa.component.tsexport class AaaaComponent {
  constructor(private activateRoute: ActivatedRoute) {
    let params = activateRoute.snapshot.params;
    console.log(params);
  }
}

Ստանանք մեր պարամետրի արժեքը.

app/aaaa/aaaa.component.tsexport class AaaaComponent {
  constructor(private activateRoute: ActivatedRoute) {
    let params = activateRoute.snapshot.params;
    let id = params['id'];
    console.log(id);
  }
}
Задание 1

Ստացեք ձեր պարամետրերի արժեքները: