在Angular中,可以使用ActivatedRoute
服务来订阅当前激活的路由。下面是一个示例代码,显示如何订阅当前激活的路由:
import { Component, OnInit, OnDestroy } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs';
@Component({
selector: 'app-your-component',
template: 'Your Component'
})
export class YourComponent implements OnInit, OnDestroy {
private routeSubscription: Subscription;
constructor(private route: ActivatedRoute) { }
ngOnInit() {
this.routeSubscription = this.route.url.subscribe(url => {
// 在这里处理当前激活的路由变化
console.log('当前激活的路由:', url);
});
}
ngOnDestroy() {
if (this.routeSubscription) {
this.routeSubscription.unsubscribe();
}
}
}
在上面的示例中,ngOnInit()
方法中订阅了this.route.url
,它返回一个可观察对象,用于监测当前激活的路由的变化。在回调函数中,你可以处理当前激活的路由变化的逻辑。
另外,在ngOnDestroy()
方法中,我们确保在组件销毁时取消订阅,以避免潜在的内存泄漏问题。