ریاکت / Custom Hooks
آزمون فصل
تمرینها
تمرین 1
شرط لازم برای اینکه یک تابع، Custom Hook محسوب شود چیست؟
برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 2
function useCounter() {
const [n, setN] = useState(0);
return { n, inc: () => setN(n + 1) };
}
function A() {
const { n, inc } = useCounter();
return <button onClick={inc}>A: {n}</button>;
}
function B() {
const { n } = useCounter();
return <p>B: {n}</p>;
}برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 3
اگر Hookی رویداد resize را شنود کند ولی Cleanup ننویسد، چه مشکلی پیش میآید؟
برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 4
چه زمانی خروجی Object نسبت به آرایه ترجیح دارد؟
برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 5
function useDebounced(value, delay) {
const [v, setV] = useState(value);
useEffect(() => {
const id = setTimeout(() => setV(value), delay);
return () => clearTimeout(id);
}, [value, delay]);
return v;
}برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 6
تابعی که هیچ Hookی را صدا نمیزند، چگونه باید نامگذاری شود؟
برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
تمرین 7
مزیت اصلی ترکیب (Composition) Custom Hookها چیست؟
برای ثبت نتیجهی این تمرین لطفاً وارد حساب کاربری خود شوید.
