以HTML文件中的路由为条件

时间:2019-02-11 11:51:59

标签: angular angular7

我找到了用于检测当前路线的代码,但在Angular 7中似乎不起作用。

代码如下:

app.component.ts

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

...

constructor(private router: Routes) {}

app.component.html

<div *ngIf="router.url === '/someroute'">We are in someroute</div>

如何在NG 7中检查组件的.html中的路由?

4 个答案:

答案 0 :(得分:2)

您必须注入Router而不是Routes

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

...

constructor(public router: Router) {}

并像使用它

<div *ngIf="router.url === '/someroute'">We are in someroute</div>

答案 1 :(得分:1)

URL在 Routes 上不可用,您必须使用 Router

下面是示例

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

constructor(private router: Router) {}

和HTML

<div *ngIf="router.url === '/someroute'">We are in someroute</div>

答案 2 :(得分:1)

router的类型必须为Router,而不是Routes,为了在视图模板中使用它,它应该是公开的。

    import {  Router } from '@angular/router';
     .
     .
     .
     constructor(public router: Router) { }

答案 3 :(得分:0)

如果要在模板中使用它,则必须将其定义为public而不是private,并使用ActivatedRoute代替Routes

如此:

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

...

constructor(public router: ActivatedRoute) {}