인프런 커뮤니티 질문&답변
작성자 없음
작성자 정보가 삭제된 글입니다.
onClickCapture 부분 질문이 있습니다.
작성
·
112
0
export default function PostArticle({ children, post }: Props) {
  const router = useRouter();
  const onClick = () => {
    console.log(1);
    router.push(`/${post.User.id}/status/${post.postId}}`);
  };
  return (
    <article className={style.post} onClickCapture={onClick}>
      {children}
    </article>
  );
}이 부분에서 onClickCapture에 대한 질문이 있습니다.
캡쳐링 단계에서 onClickCapture의 클릭함수가 실행된다면
자식인 <Link> 영역을 눌러도 <article>의 onClickCapture가 캡쳐링 단계에서 먼저 동작하여 <Link> 태그의 href 경로가 아닌 router.push()로 동작 해야한다고 생각하였습니다.
그러나 실제 <Link>태그를 클릭하면 콘솔에 1이 찍히지만 router.push() 경로가 아닌 <Link>태그의 href경로로 이동하더군요. 이 부분이 잘 이해가 안됩니다..
답변 1
0

제로초(조현영)
지식공유자
article의 router.push도 실행됐겠지만 이어서 캡처링에 의해 Link의 href로 이동하는 기능도 같이 실행된 것으로 보입니다. 히스토리가 두 번 쌓였는지 확인해보세요.





