0

我们有一个菜单对象(菜单存储),几个组件将使用它来填充数据。

加载页面时,我希望从服务器加载菜单并将其公开为商店

private subject = new BehaviorSubject<Menu>(state);
private menuStore = this.subject.asObservable().filter((m) => m != undefined).distinctUntilChanged();

然后每个组件得到结果

    menu$ = this.menuStore.select<MenuItem>('menu');

所以我的问题是......目前我们在“menuService”的构造函数中执行操作。据我了解,这并不是真正的最佳实践,因为它不受 Angulars 控制(?)。

那么我们应该怎么做呢?我们应该在 menu.store.ts 中使用“implements OnInit”吗?或者在构造函数中这样做是否有效并且可以,这可能会给我们带来问题吗?

4

1 回答 1

0

我最终创建了“PageComponents”并在这些组件中订阅

this.route.params.subscribe((params: Params) => {
  this.menuService.setActiveItem(params.id)
})
于 2017-10-31T13:12:13.837 回答