Dan Abramov answered the question of “what benefits does Redux give me?” in his post You Might Not Need Redux . TL;DR: time travel debugging, easy state persistence, easier undo/redo , straightforward syncing approaches, and a lot more.
The approach you described sounds like a “lens” / “cursor” concept, or a single reducer function that takes a state path. See that “Tao of Redux Part 2” post for links and quotes from Dan’s comments about how those relate to Redux.
One of the biggest differences between a “lens/cursor” approach and Redux’s “reducers” approach is that reducers are just functions, and are therefore composable to build up specialized behavior. That could be something simple like delegating responsibilities for a given slice of state to a specific function (`combineReducers`), or wrapping an existing reducer in other reducers to enable capabilities like undo/redo or resets.