shlogg · Early preview
Jen C. @yujhenchen

AbortController Vs RemoveEventListener For Cleanup In React Hooks

AbortController vs removeEventListener: Using AbortController simplifies cleanup in useEffect hooks, but requires careful consideration of event handling and state updates.

Using AbortController vs removeEventListener

Using AbortController

import { useEffect } from "react"
export function useOnlineStatus(onlineCallback: () => void, offlineCallback: () => void) {
  useEffect(() => {
    const controller = new AbortController()
    window.addEventListener("online", onlineCallback, { signal: controller.signal })
    window.addEventListener("offline", offlineCallback, { signal: controller.signal })
    return () => {
      controller.abort()
    }
  }, [onlineCallback, offlineCallback])
}

    
    

    
    




vs 
Using removeEventListener

import { useEffect }...