import{useMemo,useState}from'react'/**
* Debounce a function by time
* @param {Function} func
* @param {Number} delay
*/exportdefaultfunctionuseDebounce(func,delay){const[id,setId]=useState(null)returnuseMemo((...args)=>{if(id){clearTimeout(id)}else{setId(setTimeout(()=>{setId(null)func(...args)},delay))}},[func])}
My aproach is this way:
This looks great! Could you give us an example on how to implement it?