Максим, Пример с суммой мне понятен, а вот что под капотом у applyMiddleware(promiseMiddleware)(createStore) не понятно и что происходит когда мы создаем createStoreWithMiddleware(reducers) с редюсерами в аргументе. Почитал официальную документацию, окончательно запутался.
{this.setState({counter: this.state.counter+1})}
остался открытым.