I'm trying to implement some listeners on react navigation using a functional component approach:
const ExampleComponent = () => {
const [subs, setSubs] = React.useState([]);
React.useEffect(() => {
setSubs([
navigation.addListener('willFocus', () => console.log('will focus')),
navigation.addListener('willBlur', () => console.log('will blur')),
navigation.addListener('didFocus', () => console.log('did focus')),
navigation.addListener('didBlur', () => console.log('did blur')),
]);
return () => {
setSubs([])
}
}, [])
return (
...
)
};
Following the advice: https://fantashit.com/navigation-listeners-firing-multiple-times-per-event/
However what seems to be happening is each listener is being called twice, and I'm unsure how to fix this?