captivationsoftware / react-sticky

<Sticky /> component for awesome React apps
MIT License
2.64k stars 385 forks source link

Add support for measuring arbitrary nodes as the container #222

Open bolora opened 6 years ago

bolora commented 6 years ago

I don't want to use It would be great if you could assign a selector as wrapper to the Sticky element. Example:

<div id="some-id-that-wraps-sticky-object">
     ...
     <Sticky wrapper="#some-id-that-wraps-sticky-object">
         ...
     </Sticky>

     ...
</div>

Reason: <div id="some-id-that-wraps-sticky-object"> is outside the react root. Should also be able to do something like <Sticky wrapper="body">

vcarl commented 6 years ago

I see your use case, but I'm not a fan of reaching outside of the component arbitrarily. Would something like

<StickyContainer measureNode={domRef}>
  {/* ... */}
</StickyContainer>

work for you? I'm not sure I like that either, but I'd prefer it over an arbitrary selector.