首页 > 解决方案 > rxjs6 ActivatedRoute 订阅 observable

问题描述

在 app.component 中,我需要执行基于 ActivatedRoute 的操作。使用:Angular6、rxjs6(使用新语法)

import {Observable} from 'rxjs';
import {map} from 'rxjs/operators';

....

constructor (private route:ActivatedRoute){
  const url: Observable<string> =route.url.pipe(map(segments=>segments.join('')));

}

目的是根据激活路线的变化显示/隐藏某些东西。

先感谢您!

标签: angularrxjs6

解决方案


您可以像任何普通的 observable 一样订阅路由,然后将您的逻辑放入订阅中。

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

....

constructor (private router: Router) {
  this.router.events.subscribe((event) => {
      console.log(event);
  });
}

文档


推荐阅读