Как вы получаете первую часть URI в Angular 5? - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть кнопка на моей навигационной панели.При нажатии я хочу другое поведение в зависимости от того, какой URI в данный момент находится у пользователя.

Допустим, у меня есть этот URI localhost:8080/entity/{entityId} Как я могу получить entity, первую часть URI, какстрока на угловом 5.

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Сначала вы должны импортировать ActivatedRoute из Angular =>

import { ActivatedRoute } from '@angular/router';

Далее. Ввести activRoute в конструкторе компонентов =>

constructor(private activatedRoute: ActivatedRoute) {}

Теперь вы можете получить доступ к маршрутам ваших детей, этоЖурнал консоли выведет массив дочерних элементов.

ngOnInit() {
 console.log(this.activatedRoute.routeConfig.children);
}

Вы можете получить много информации о вашем URL с помощью ActivatedRoute.https://angular.io/api/router/ActivatedRoute

0 голосов
/ 25 сентября 2018

Хорошо. Я нашел ответ из документа Angular, вы должны использовать класс UrlSegment Angular из @angular/router, чтобы проанализировать URL в сегментах, ссылающихся на соответствующий документ: https://angular.io/api/router/UrlSegment

const tree: UrlTree = router.parseUrl('/team;id=33');
const g: UrlSegmentGroup = tree.root.children[PRIMARY_OUTLET];
const s: UrlSegment[] = g.segments;
s[0].path; // returns 'team'
s[0].parameters; // returns {id: 33}
...