-
Notifications
You must be signed in to change notification settings - Fork 58
Description
This is primarily a question about a difference between the middleware API here versus the JS version.
redux.js exposes only a subset of the Store's API (getState()
and dispatch()
) to middleware, whereas redux.dart provides the entire Store
instance. Are there any valid use cases where having access to reducer
, onChange
, or teardown
justifies their presence?
It seems to me that using those additional Store APIs in middleware would usually be considered anti-patterns and limiting middleware to just the Store's state and dispatcher would be a useful constraint and would make test setups a bit simpler (although this might be a marginal improvement, at best).
Obviously this would be a breaking API change, and the benefit of preventing misuse in middleware and aligning with redux.js is relatively small, so I definitely understand if you decide the juice isn't worth the squeeze. Maybe something to consider in the future if you have other reasons for a new major version.