Props stay the same when InPortal content is hidden
We use an Intersection Observer to determine whether a video is in view and to render it. The problem arises when the video leaves all OutPortals: it maintains the props that it received before going back 'into hiding', so inView prop never gets set to false and
Is there a way to force the detached component to revert back to default props whenever it is hidden? Or some sort of workaround? I'm just looking for any way for the component to have state that triggers when it is detached from the DOM.
Hi, can you share a repro of the issue so I can see it for myself?
I'm not totally clear, but it sounds like this is a bug, since leaving the OutPortal should indeed reset props to their original state. A repro would be very helpful to confirm that. If you've already found the cause, a PR to fix this would also be very welcome!
Hey there! If I get some bandwidth, I'll try to set up a project with a repro.
I'm diving into the code to as well to see if there's anything obvious to fix.
Hey there, I've encountered the same issue. It's because nothing in <OutPortal/> calls node.setPortalProps on unmount.
Edit: I've created a PR with an initial implementation of portal prop resetting. Let me know what you think! https://github.com/httptoolkit/react-reverse-portal/pull/38