【发布时间】:2019-06-06 03:34:35
【问题描述】:
我正在尝试创建自定义面包屑。我想获得没有 dataid 的当前路线。
我已尝试以下方法,但它带有数据 ID,并且路由不起作用。
请专家建议。
实际链接:http://localhost:4200/settings/data?dataId=1100
HTML
<ul >
<li class="breadcrumb-item" *ngFor="let breadLink of breadcrumbListObj"><a [routerLink]="breadLink.link">{{breadLink.name}}</a></li>
</ul>
TS
import { Component, OnInit } from '@angular/core';
import { Location } from '@angular/common';
import {Router, ActivatedRoute, NavigationEnd, RoutesRecognized, Params, PRIMARY_OUTLET} from '@angular/router'
constructor(location: Location, activate: ActivatedRoute, router:Router) {
router.events.subscribe((val) => {
if (location.path() !== '') {
this.route = location.path();
this.breadcrumbListArray = this.route.split('/');
for(let d of this.breadcrumbListArray) {
this.breadcrumbListObj["link"] = "/" + d;
this.breadcrumbListObj["name"] = d;
}
}
});
预期的面包屑路径是 => 设置/数据,点击设置时具有相应的路由
【问题讨论】:
-
在构造函数中注入
private router: Router,然后就可以使用this.router.url访问当前路由了
标签: angular routing breadcrumbs