小编典典

将重新选择选择器与参数一起使用

reactjs

如何将其他参数传递给组合的选择器?我在尝试着

•获取数据

•过滤数据

•通过myValue将自定义值添加到我的数据集/组数据中

export const allData = state => state.dataTable
export const filterText = state => state.filter.get('text')

export const selectAllData = createSelector(
  allData,
  (data) => data
)

export const selectAllDataFiltered = createSelector(
  [ selectAllData, filterText ],
  (data, text) => {
    return data.filter(item => {
      return item.name === text
    })
  }
)

export const selectWithValue = createSelector(
  [ selectAllDataFiltered ],
  (data, myValue) => {
    console.log(myValue)
    return data
  }
)

let data = selectWithValue(state, 'myValue')

console.log(myValue) 退货 undefined


阅读 288

收藏
2020-07-22

共1个答案

小编典典

您的问题的答案在FAQ中有详细说明:https//github.com/reactjs/reselect#q-how-do-i-create-a-selector-that-
takes-an-argument

简而言之,重新选择不支持传递给选择器的任意参数。推荐的方法是,将相同的数据存储在Redux状态中,而不是传递参数。

2020-07-22