I need to add a listener for all scroll events in Reason React or all scroll affects affecting the main window (either would work).
Trying this but the event does not trigger:
open Webapi.Dom;
Document.addEventListener("scroll", onScroll);
P.S. Also, there's a mention that addEventListener
is a partial application, so I'm worried that this is potentially a 3-argument function expecting a target object rather than a window-wide function.
Your suspicion that this is a three-argument function is correct. It expects a reference to the document it should attach the event listener to. The document that is currently in scope is conveniently accessible through Webapi.Dom.document
, so you should only need to add that:
Document.addEventListener("scroll", onScroll, document);
This convention is used everywhere in bs-webapi. Functions are not hard-coded to the document or window currently in scope because they aren't the only one you can use, even if they usually are the ones you want to use.