相关疑难解决方法(0)

如何访问 ngrx/effects 中的解析器数据?(v7)

在组件中有 api 调用,这很耗时,所以我实现了解析器。我希望解析器数据存在于商店中,以供以后使用。我已经实现了 ngrx/store、ngrx/effects 和 ngrx/router-store。

组件中的当前状态

  • 直接从组件中的解析器数据获取数据(路由类型为ActivatedRoute) 比较

期望状态

为了保存解析器数据,我需要访问有效的解析器数据。所以我可以简单地在组件中调度操作并订阅状态。

  • 组件中的调度操作 (LoadSubTopicDetails)
  • 效果将监听操作并访问效果中相同的解析器数据

问题

{}我总是在 CustomSerializer 中的“数据”中变空。

  • 在 app-routing.module.ts 中使用解析器 路由模块

  • 路由到 SubTopic/:subTopicId 时的控制台输出 安慰


如何访问效果中的解析器数据?提前致谢。


代码

减速器/index.ts(CustomSerializer)

export interface RouterStateUrl {
  url: string;
  queryParams: Params;
  params: Params;
  data: any;
}

export const reducers: ActionReducerMap<State> = {
  routerReducer: fromRouter.routerReducer
};

@Injectable()
export class CustomSerializer implements fromRouter.RouterStateSerializer<RouterStateUrl> {
  serialize(routerState: RouterStateSnapshot): RouterStateUrl {
    let route = routerState.root;
    while (route.firstChild) {
      route = route.firstChild;
    }

    const { …
Run Code Online (Sandbox Code Playgroud)

angular ngrx-router-store angular7

0
推荐指数
1
解决办法
2457
查看次数

标签 统计

angular ×1

angular7 ×1

ngrx-router-store ×1