const DoctorResearchArticle = props => {
console.log('props.doctor_indi_articles', props.doctor_articles); //here can able to access redux store data after triggerring the dispatch action at line no 6
const handle_edit_click = async (id) => {
await props.doctor_ind_article(id);
console.log('props.doctor_indi_articles', props.doctor_articles);
// here after triggerring the api and dispatching the data to store, at the initial time it shows null
}
}
const mapDispatchToProps = (dispatch) => {
return {
doctor_ind_article: (article_id) =>dispatch(getDocIndivisualArti(article_id)),
}
}
const mapStateToProps = (state) => {
return {
doctor_articles: state.doctor.doctor_ind_article
};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(DoctorResearchArticle);
проблема здесь в том, что данные redux изначально показывают значение null, после вызова действия отправки внутри функции основного компонента, как указано в коде, важная вещь здесь заключается в том, что при вызове действия отправки запускается api и данные, хранящиеся в хранилище redux, также обновляются. дело в том, что мы можем получить доступ к данным хранилища redux внутри основного компонента, но не в функциях внутри основного компонента. если я регистрирую данные реквизита в основном компоненте, он показывает обновленные данные состояния, но если записывать то же самое внутри функции, тогда сначала он показывает null, после чего загружает (журнал) данные. это меня очень беспокоит. и в связи с этим я попытался использовать store.subcribe (listener), где функция получает данные, когда хранилище обновляется внутри основного компонента. это работает, но это займет слишком много времени. так что это не подходит для моего случая. так что любая помощь приветствуется. спасибо.