gpt4 book ai didi

angular-routing - 使用路由器存储在有效模块中导航时如何获得激活的路由?

转载 作者:行者123 更新时间:2023-12-05 09:15:37 26 4
gpt4 key购买 nike

我正在尝试分派(dispatch)与组件路由相关的路由器存储导航操作。路由的跟踪日志显示导航采用的相对路径是应用程序路径而不是组件路径。

 return of(
new routerActions.Go({
path: ['./', payload.rootPath],
extras: { relativeTo: this.route },
}),
);

constructor(
private actions$: Actions,
private route: ActivatedRoute,
) {}

我正在我的效果模块构造函数中注入(inject) ActivatedRoute,这似乎是这里的问题。如何在我的组件外部获取激活的路由并将其传递给导航操作?

最佳答案

ActivatedRoute 特定于每个路由组件。

这给了你几个选择。

  1. 导航根路由以返回您需要的数据。

let route = this.router.routerState.root;
while (route.firstChild) {
route = route.firstChild;
}

return route.snapshot;

  1. 从包中的路由组件传递 ActivatedRoute。

  constructor(private store: Store<AppState>, private activatedRoute:ActivatedRoute) {}

doSomething() {
this.store.dispatch(new Action.YourAction({ id: actionId, route: activatedRoute });
}

关于angular-routing - 使用路由器存储在有效模块中导航时如何获得激活的路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52216116/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com