После отправки асинхронного действия я анализирую данные, возвращенные в редуктор, и сохраняю проанализированные данные в состояние.
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 не работает. Это работает, если я передаю goToView
из компонента componentDidMount, через первый редуктор, через parseData и обратно через компонент. Это также работает, если я передаю goToView
в качестве опоры для компонента, а затем onPress выполняется непосредственно внутри компонента. Есть ли другой способ отправить это действие?