Just a simple pattern for loading async data with react, redux and redux-thunk middleware.
I tend to do this with a higher order component including async import of child component, etc... it works well for the 90% cases I've used it with. sub-state/reducer logic is only slightly different, but the logic is bog simple and holds up well enough.
I also include a reducer handler for when the location/init happens as a lot of times a refresh or location change in the middle of an async call can leave things broken.