没有“数据”要求的路线转换?

时间:2018-11-15 10:43:39

标签: angular angular-animations

请参见Angular Route Animations Documentation

以上文档以及那里的所有其他V4教程都使用诸如此类的静态数据作为某种触发。

{ 
    path: 'about', 
    component: AboutComponent,
    data: {
        animation: 'AboutPage'
    } 
}

使用哪个来决定触发器或状态?

prepareRoute(outlet: RouterOutlet) {
  return outlet && outlet.activatedRouteData && outlet.activatedRouteData['animation'];
}

但是,我的路由器配置更像这样:

{ 
    path: ':id', 
    component: CoolComponent,
}

因此,我确定用作触发器的函数实际上没有任何意义。我需要用更通用的替代它。

您如何处理?

1 个答案:

答案 0 :(得分:0)

根据我的评论,您可能需要在某个服务的某个地方全局订阅路由器事件-

this.router.events.subscribe((ev) => {
  if (this.router.url.includes('someURL')) {
    // trigger call
  } else {
    // some other code
  }
}

,您可以收听此全局变量。希望它能对您有所帮助。