하나의 useRef 사용
결과

내용
- 자식 컴포넌트에 있는 nav의 메뉴 클릭시 부모 컴포넌트에 있는 특정 DOM 요소로 scroll 이동
코드
const focusTarget = useRef([]);
const scrollTo = e => {
const name = e.target.name;
const category = {
design: 0,
contact: 1,
qna: 2,
};
focusTarget.current[category[name]].scrollIntoView({ behavior: 'smooth' });
};
return(
<Nav scrollTo={scrollTo} />
<Title ref={el => (focusTarget.current[0] = el)}>DESIGN</Title>
<ContactTitle ref={el => (focusTarget.current[1] = el)}>
CONTACT
</ContactTitle>
<Title ref={el => (focusTarget.current[2] = el)}>QnA</Title>
)}
const Nav = ({ scrollTo }) => {
return(
<Design name="design" onClick={scrollTo}>
DESIGN
</Design>
<Contact name="contact" onClick={scrollTo}>
CONTACT
</Contact>
<Qna name="qna" onClick={scrollTo}>
QnA
</Qna>
) }