useDebounce
もう使用していないので切り出した
code:useDebounce.ts
import { useState, useEffect } from "../preact/hooks.ts";
export const useDebounce = <T>(value: T, interval: number): T => {
useEffect(
() => setTimer((old) => {
clearTimeout(old);
return setTimeout(() => setValue(value), interval);
}),
);
return debounced;
};