This repository was archived by the owner on Apr 3, 2024. It is now read-only.

Description
Hello! First off, love this library so much, it's made my code so much more clean.
Simplified reproduction: https://codesandbox.io/s/red-https-bxpo0?file=/src/App.tsx
But anyways, I've run into this scenario recently and was able to resolve by resolving this locally - but, to be honest, I'm not really sure of the React internals enough to PR this + test. Anyways, the scenario
- I want to use
useEffectReducer in my own hook and export out it's dispatch so that other components can programmatically send out events to the reducer.
- However, when I leverage the dispatch it emits events twice.
- To resolve, you can
useMemo the wrappedReducer .
const memoReducer = useMemo(() => wrappedReducer, []);
const [[state, effectStateEntityTuples, entitiesToStop], dispatch] = useReducer(
memoReducer,
initialStateAndEffects
);