연이어 호출되는 함수들 중 마지막 함수(또는 제일 처음)만 호출하도록 하는 것
const [timer, setTimer] = useState(0)
const changeValue = (e) => {
if (timer) {
clearTimeout(timer)
}
const delay = setTimeout(async () => {
try {
await axios.get(`api요청`)
} catch (err) {
console.log(err)
}
}, 300);
setTimer(delay)
}
마지막 함수가 호출된 후 일정 시간이 지나기 전에 다시 호출되지 않도록 하는 것