Skip to content

Instantly share code, notes, and snippets.

@sag1v
Created October 25, 2019 20:23
Show Gist options
  • Save sag1v/80aeaaf45c424bb5b7b3f22d7aa58385 to your computer and use it in GitHub Desktop.
Save sag1v/80aeaaf45c424bb5b7b3f22d7aa58385 to your computer and use it in GitHub Desktop.
Markdium-React race condition bug
function Pets() {
//...
const _previousKeyRef = useRef(null);
useEffect(() => {
_previousKeyRef.current = pets.selectedPet;
if (pets.selectedPet) {
dispatch({ type: "FETCH_PET" });
getPet(pets.selectedPet).then(data => {
if (_previousKeyRef.current === pets.selectedPet) {
dispatch({ type: "FETCH_PET_SUCCESS", payload: data });
}
});
} else {
dispatch({ type: "RESET" });
}
}, [pets.selectedPet]);
return (...);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment