Angular-redux设计-数组选择器

Angular-redux design - array selector

我有 angular 个使用 Redux 设计模式的应用程序。 我的州包含一系列学生。每个学生都有多个属性 姓名、年龄、身份证等..

我想select给一个特定的学生打分。

这是我的组件代码

  @select('students')
  private students: Observable<any>;

因为我有学生的 Id,所以我可以订阅 students observable 并找到我的学生。这是可行的,但当然不是最佳做法。

 this.students.subscribe(students => {
     const student = students[this.id];
    console.log(student);
   });

如何访问特定学生?

我最后做的是更新我的 select:

 @select(state => state.students .find(s => s.id=== state.ui.id))
  student: Observable<any>;

这就是我可以订阅特定学生的原因