هوک useDeferredValue در React به شما اجازه می‌دهد به‌روزرسانی سنگین رابط کاربری را به تعویق بیندازید تا تایپ کاربر روان بماند.

مشکل

وقتی کاربر در فیلد جست‌وجو تایپ می‌کند و هر کلید لیست بزرگی را دوباره رندر می‌کند، رابط کاربری کند می‌شود.

راه‌حل

با useDeferredValue مقدار تأخیری می‌سازید؛ ورودی فوراً به‌روز می‌شود و لیست در اولویت پایین‌تر رندر می‌شود.

تفاوت با debounce

debounce تأخیر ثابت زمانی ایجاد می‌کند؛ اما useDeferredValue با زمان‌بندی رندر React هماهنگ است و در دستگاه‌های سریع تقریباً بدون تأخیر کار می‌کند.

جمع‌بندی

برای جست‌وجوهای سنگین، این هوک ساده‌ترین بهبود تجربه‌ی کاربری است.

منابع: مستندات React