יש מצב שחוזר בכל אפליקציה: פותחים modal חיפוש, ורוצים שה-input יקבל focus אוטומטית. או בונים וידאו פלייר עם כפתורי play/pause מותאמים. או משלבים ספריית D3 שצריכה גישה ישירה ל-DOM element. ניסיון לעשות את זה עם state גרידא יוביל לקוד מסורבל, שגיאות, ו-re-renders מיותרים. זה בדיוק השימוש של useRef.
useRef הוא אחד ה-hooks שכשמבינים אותו לעומק, מבינים שחצי מה-patterns שה-docs של React מדגישים פתאום הופכים ברורים. זה לא רק "גישה ל-DOM" - זה "מנגנון לשמירת ערך שחי מחוץ למחזור render".
אחד ה-hooks שמפריד בין מי שמבין React לבין מי שפשוט כותב בו.
בפרקטיקה: כל component library שמכבדת את עצמה - shadcn/ui, Radix, Mantine, Chakra UI - עטופה ב-forwardRef כמעט בכל component. ב-Wix Editor, הגישה ל-DOM היא פונדמנטלית - המשתמש גורר, מכוון, ומזיז אלמנטים, וכל פעולה כזו דורשת גישה ישירה ל-DOM measurements ולnode references.