티스토리 뷰
프론트엔드/NextJS
Warning: validateDOMNesting(...): <a> cannot appear as a descendant of <a> 에러
홍수성찬 2023. 3. 24. 15:25Next JS로 코드를 작성하다 보면 갑자기 아래와 같은 에러가 발생할 수도 있다.
Warning: validateDOMNesting(...): <a> cannot appear as a descendant of <a>
이 문제가 발생하는 이유는 HTML에서 유효하지 않은 중첩이 발생했을 때 발생한다. 이 경우, a 태그가 a 태그 내부에 중첩되어 있다는 뜻이다. 이전에는 Link를 사용했을 때, a 태그를 같이 사용해서 구현했었다. 즉, a 태그 역할을 Link 안에 또 다른 a 태그를 사용했기 때문에 발생한 것이다.
<Link>
<a href="...">...</a>
</Link>
or
<Link href="...">
<a>...</a>
</Link>
그러나 이제는 위 처럼 코드를 작성하지 않는다. 왜냐하면, 이제는 a 태그를 사용하지 않고 Link로만 처리하기 때문이다.
그렇기 때문에 아래와 같이 수정해서 처리하면 더 이상 에러가 발생하지 않는다.
<Link href="...">
...
</Link>
or
<Link href="...">
<div>...</div>
</Link>
Styled-components로 구현했을 때도 마찬가지다.
const LinkStyle = styled.div`
...
`
<Link href="...">
<LinkStyle>...</LinkStyle>
</Link>
styled.a가 아닌 styled.div로 처리하면 된다.
'프론트엔드 > NextJS' 카테고리의 다른 글
첫 Lighthouse 개선기 (Accessibility/Best Practices/SEO) (1) | 2024.09.07 |
---|---|
퀵뉴스 프로젝트, 검색 요청 개선기 (0) | 2024.02.16 |
CSR, SSR, SSG, ISR 비교 (0) | 2023.06.14 |
Vercel 배포 오류 해결기 (0) | 2023.06.05 |
Styled-Components 새로고침을 하면 스타일이 적용되지 않는 문제 (0) | 2023.03.23 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 원티드 프리온보딩
- 조코딩과함께
- Singleton
- 고민한 부분
- 그룹인터뷰후기
- 신입개발자가 준비해야 할 것들
- Default Branch
- Frontend
- React
- node
- 포스텍애플디벨로퍼아카데미
- 개발자이력서꿀팁
- 싱글톤
- LottieFiles
- 깃허브 Merge
- if(kakao)dev2022
- 스프링
- 최종추가합격
- 자바스크립트
- #포스텍애플디벨로퍼아카데미
- 포스텍애플아카데미
- DB Error MongooseServerSelectionError
- 설명회느낌점
- 개발 이력서 지원 팁
- 원티드 프리온보딩 챌린지
- 프론트엔드 챌린지
- Express
- 코딩테스트 대비
- javascript
- PostechAppleDeveloperAcademy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함