What does the following warning mean and how can I fix its cause?
Warning: Unimplemented primitive used:removeEventListener
in
[@bs.val]
external addEventListener: (string, unit => unit) => unit = "addEventListener";
external removeEventListener: (string, unit => unit) => unit =
"removeEventListener";
...
React.useEffect(() => {
let handler = () => dispatch(ToggleMenu(false));
addEventListener("popstate", handler);
Some(() => removeEventListener("popstate", handler));
});
You are missing [@bs.val]
at the front of removeEventListener
when declaring the binding.
[@bs.val]
external addEventListener: (string, unit => unit) => unit = "addEventListener";
[@bs.val]
external removeEventListener: (string, unit => unit) => unit =
"removeEventListener";
Sometimes it's difficult to see this because the linter is always moving lines around ;)
Source: I've also ran into this minutes ago.