如何从Reducer过滤数据

时间:2018-08-21 15:31:59

标签: shoutem

我的Shoutem扩展名中有一个sets的数据架构,其中包含我从SoundCloud帐户提取的播放列表和专辑。每个set都有一个type字段,指示它是专辑还是播放列表。

在我的reducer.js中,我有一个简单的集合(根据文档),该集合可以提取所有集合。

export default combineReducers({
  sets: storage(ext('Sets')),
  allSets: collection(ext('Sets'), 'all'),
}

在我的组件中,该数据是通过find方法获取的:

componentDidMount() {
  if (shouldRefresh(this.props.sets)) {
    this.props.find(ext('Sets'), 'all', {
      include: 'tracks',
    });
  }
}

...并且它也连接到状态。我不确定findgetCollection是否实际上正在检索数据:

export default connect(
  (state) => ({
    sets: getCollection(state[ext()].allSets, state),
  }),
  { navigateTo, find }
)(
  connectStyle(ext('AlbumList'))(AlbumList)
);

如何在type='album'处提取该数据的子集?现在,我正在对.filter方法返回的数据使用基本的js render,但是我敢肯定应该有某种方法来使用reducer。我对减速器这个概念并不陌生,redux-io documentation似乎是不完整的。

0 个答案:

没有答案