react-redux v7.1.2 Release Notes
Release Date: 2019-11-06 // over 4 years ago-
๐ This releases fixes a subtle timing bug with
connect
anduseSelector
in React Native environments, and adds the ability to pass through non-Redux-store values as astore
prop.๐ Fixed Store Subscriptions in React Native
โก๏ธ Our current implementation requires cascading updates down through connected components. This is primarily done during React's "commit phase" via the
useLayoutEffect
hook. Unfortunately, React warns whenuseLayoutEffect
is called in SSR environments, so we try to feature-detect that and fall back touseEffect
just to avoid that warning.๐ Unfortunately, a tweak to the feature detection conditions during the pre-7.1.0 work caused the check to accidentally fail in React Native environments. This meant that
useEffect
was actually being used all the time, and this led to occasional timing bugs such as #1313 and #1437 . This affected the previous v7.1.x releases.โ We've fixed that issue, and added additional test cases to ensure that our code works correctly under React Native.
๐ See #1444 for more details on the feature detection and the fix.
Passing Through Non-Store Values
๐ป
connect
has always accepted passing a Redux store directly to connected components as a prop namedstore
(with the exception of v6). As a result, thestore
prop has effectively been treated as a "reserved" prop, in much the same way thatkey
andref
are "reserved" prop names handled by React.Some users may be using the word "store" to describe their domain data, and have asked to allow variables that aren't a Redux store through the
store
prop to the component (#1393). We've finally been able to implement that capability.Changes
- Pass non-Redux-store values through the
store
prop (@markerikson - #1447) - ๐ Fix RN batching and effect behavior (@markerikson - #1444)
- โ Remove unused
latestStoreState
field (@Hypnosphi - #1426) - Mark the react renderers as optional peer deps. (@timdorr - 388d9e4)
- ๐ Use the same condition for checking if SSR in useSelector.js as in connectAdvanced.js (@LeoDanielsson - #1419)
- Pass non-Redux-store values through the