Архитектура запросов в reactJs
Всем добра! Не могу понять почему, если я асинхронный запрос к базе данных размещаю в componentDidMount, все отрабатывает нормально и происходит render компоненты, а при использовании архитектуры react-redux с выносом запроса в отдельный метод и доступом к нему через dispatch в том же componentDidMount, данные xhr приходят но не рэндерятся. Ощущение что render срабатывает раньше изменения state. Может есть какие-то настройки у react-redux для работы с асинхронными запросами? Запрос выглядит так:
let stickerListGetStickers = (state, code) => {
let query = code ? '/api/stickers/' + code : '/api/stickers';
(async () => {
await axios.get(query)
.then((res) => {
state.stickers = res.data;
})
.catch((error) => {
console.log(error)
});
})();
};
рендер передан методу subscribe():
//файл index.js
import React from 'react';
import ReactDOM from 'react-dom'
import App from "./App";
import store from "../../redux/redux-store";
import {BrowserRouter} from "react-router-dom";
import {Provider} from 'react-redux';
let renderApp = () => {
ReactDOM.render(
<BrowserRouter>
<Provider store={store}>
<App/>
</Provider>
</BrowserRouter>, document.getElementById('root'));
};
store.subscribe(() => { renderApp() });
renderApp();