如何设置onPress函数的状态,该函数稍后在reducer内调度另一个动作

时间:2018-09-05 21:02:52

标签: reactjs react-redux

调度了异步操作后,我解析了reducer中返回的数据,并将解析后的数据保存到状态。

import parseData from ...

const reducer = {
  [ACTION]: (state, { data }) => {
    const parsedData = parseData(data);
    return { data: parsedData, loading: false}
  })
}

在parseData中,我想编写一个onPress函数:

import goToView from ...

const parseData = (data) => data.map(d => 
  Object.assign({
    onPress: () => goToView(d.view)
  }, d)
)

goToView返回一个操作(服务器端渲染)

export function goToView(view) {
  return { type: GO_TO_VIEW, view };
}

onPress不起作用。如果我从组件componentDidMount传递goToView,通过第一个化简器,通过parseData,再返回通过组件,则它会起作用。如果我将goToView传递给组件,也可以使用它,然后onPress直接在组件内部完成。还有另一种方式来调度此动作吗?

0 个答案:

没有答案