window.data = {}
useEffect(() => {
// do something
}, [window.data])
Does the above code makes sense?
since window.data is global, it won't be different on renders, and the effect won't execute?
window.data = {}
useEffect(() => {
// do something
}, [window.data])
Does the above code makes sense?
since window.data is global, it won't be different on renders, and the effect won't execute?
No, that won't work. Effect could only be triggered when component is rerendered and dependencies change. Changing global variables won't cause a rerender, so the effect won't run.
It actually causes a re-render for me. It works, but I think it is an anti-pattern