В соответствии с вашей проблемой вы хотите иметь побочный эффект в вашем действии. Таким образом, вам нужно использовать промежуточное программное обеспечение в вашем приложении, либо редуксное промежуточное программное обеспечение, либо саговое сокращение.
Создайте действие для передачи данных из вашего компонента. Из этого действия вызовите функцию побочного эффекта и обновите состояние, чтобы разрешить компоненту выполнить действие успешно или нет.
Создатель действия
function postData(dispatch, data) { // needs to dispatch, so it is first argument
return dispatch=> fetch("api/postdata",
{
body: data,
method: "post"
})
.then(res => res.json())
.then(
data => dispatch({ type: 'POST_DATA_SUCCESS', data }),
err => dispatch({ type: 'POST_DATA_FAILURE', err })
);
}
в компоненте при отправке
postData(this.props.dispatch, data);
// не забудьте передать отправку