使用Redux工具包中的createEntityAdapter时,如何在类组件中将实体作为数组获取?

问题描述

我在商店中有一个切片,该切片是使用Redux Toolkit createEntityAdapter 创建的。在功能组件中,可以将 useSelector adapter.getSelectors()返回的选择器一起使用。 但是,如何在基于类的组件中将所有实体作为数组(如与selectAll选择器一样)?我正在将 connect mapStatetoProps 一起使用,这仅允许我获取实体或ID作为道具,但并非所有实体都以与ID相同的顺序进行排列已排序...

解决方法

您将使用相同的selectAll选择器,但是将在mapState函数中调用它以与connect一起使用,而不是将其传递给useSelector

const mapState = (state) => {
  return {
    items: itemsSelectors.selectAll(state)
  }
}