发生错误时,我应该在哪里释放记忆选择器?

时间:2019-05-25 09:36:46

标签: angular ngrx memoization

我有一个使用ngrx作为状态管理的Angular应用程序。我使用实体适配器从API(selectAll)检索实体列表。有时,API无法处理请求并返回错误(500服务器错误)。 MemoizedSelector记住提供的参数并缓存空结果。我需要找到最好的位置来调用selector.release()再次发出API请求。

selectors.ts

export const selectUserState: MemoizedSelector<object, State> = createFeatureSelector<State>('user');

// this can get an error from API
export const selectAllUserItems: (state: object) => User[] = userAdapter.getSelectors(selectUserState).selectAll;

UsersComponent

...
  ngOnInit() {
    this.users$ = this.store$.select(UserStoreSelectors.selectAllUserItems);
  }
...

我需要在正确的位置添加此代码

...
selectUserState.release();
...

0 个答案:

没有答案