【发布时间】:2017-07-05 13:19:01
【问题描述】:
每当当前路线发生变化时,我都会尝试运行一个函数。例如,如果我们当前在“..../user/user-details”上,其中 user-details 是一个单独的组件。我想在路由更改时执行一个方法(路由是从 UI 更改还是直接从 URL 更改都无关紧要)。 我在用户详细信息组件中做了一些事情:
constructor(private router: Router) {
router.events.subscribe(() => {
console.log('Route changed');
});
}
但是这种方法的问题是,它会在每次路线更改时运行(无论我们是否导航到用户详细信息页面或从用户详细信息页面导航)。所以这是订阅应用程序范围的路线。我只是希望它在我们离开用户详细信息组件时运行。他们有办法做到这一点吗?
【问题讨论】:
-
注入activedroute并比较段
标签: angular