angular - 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('')));
}
目的是根据激活路线的变化显示/隐藏某些东西。
先感谢您!
解决方案
您可以像任何普通的 observable 一样订阅路由,然后将您的逻辑放入订阅中。
import { Router } from '@angular/router';
....
constructor (private router: Router) {
this.router.events.subscribe((event) => {
console.log(event);
});
}
推荐阅读
- html - 强制 CSS 背景图像为 HTTPS
- haskell - 缺少结果类型?在函数长度 :: Monad m => ByteString mr -> m (Of Int r)
- docker - docker-compose 不初始化容器环境变量
- idris - 在 REPL 中使用重写
- python - 使用导入的函数保存输出变量
- c - 当您没有可执行文件的源代码时,您可以在 Eclipse 中远程调试共享对象吗?
- c# - 在绑定到 ListView 之前从 ViewModel 修改属性
- python - 如何使用 for-try-except 块杀死 jupyter 实验室单元?
- image - Azure VM 自定义 OS 映像 ARM 模板部署
- vba - 当有多个相同的类名时,如何使用“getelementsbyclassname”?