Projects/Next.js board-project

[Next.js] cannot be used as a jsx component.

2023. 9. 20. 19:26
목차
  1. 문제
  2. 해결방안 1. 주석달기
  3. 해결방안 2. 업데이트하기
  4. Ref

문제

오랜만에 뜯어본 Next.js의 게시판 프로젝트에 다음과 같은 에러가 발생했습니다.

비동기 함수인 <Header> 컴포넌트는 프로미스 객체를 리턴합니다.

하지만 이게 왜... 문제죠?

멋진 icyJoseph의 의견에 따르면

typescript가 async 컴포넌트를 이해 하지 못한다고 합니다.

따라서 해당 주석을 달아 임시방편으로 오류를 해결할 수 있다고 합니다.

 

해결방안 1. 주석달기

export default async function Home() {
  return (
    <>
      {/* @ts-expect-error Server Component */}
      <Header />
      <Main>
        <Aside />
        <div>뭔가 멋진 메인 사진을 걸고 싶어요 캐러셀같은거 넣으면 좋겠다</div>
        <Aside banner={"banner"} />
      </Main>
      <Footer />
    </>
  );
}

아무래도 주석이 있는 것은 영 찜찜합니다.

 

해결방안 2. 업데이트하기

역시 정답은 공식문서에 있었습니다.

TypeScript 5.1.3 이상 @types/react 18.2.8 이상이어야 해당 에러가 안 뜬다고 하네요!

npm install @types/react@latest typescript@latest

위 명령어를 통해 업그레이드를 하고 나니 오류 문구가 사라졌습니다. 

 

Ref

https://github.com/vercel/next.js/issues/42292

 

'SomeComponent' cannot be used as a JSX component. · Issue #42292 · vercel/next.js

Verify canary release I verified that the issue exists in the latest Next.js canary release Provide environment information Operating System: Platform: win32 Arch: x64 Version: Windows 10 Pro Binar...

github.com

https://nextjs.org/docs/app/building-your-application/configuring/typescript#async-server-component-typescript-error

 

Configuring: TypeScript | Next.js

Next.js provides a TypeScript-first development experience for building your React application. It comes with built-in TypeScript support for automatically installing the necessary packages and configuring the proper settings. 🎥 Watch: Learn about the b

nextjs.org

 

'Projects > Next.js board-project' 카테고리의 다른 글

[Next.js] 배포 에러 고치기  (1) 2023.10.02
[Next.js] 묵혀둔 프로젝트 고치기 - 좋아요 기능  (0) 2023.09.23
  1. 문제
  2. 해결방안 1. 주석달기
  3. 해결방안 2. 업데이트하기
  4. Ref
'Projects/Next.js board-project' 카테고리의 다른 글
  • [Next.js] 배포 에러 고치기
  • [Next.js] 묵혀둔 프로젝트 고치기 - 좋아요 기능
Summer.dev
Summer.dev
프론트엔드 개발자 Summer 입니다! 피드백은 언제나 환영입니다.
Summer.dev
꾸준함이 무기
Summer.dev
전체
오늘
어제
  • 분류 전체보기
    • Projects
      • Next.js board-project
      • MOMO
    • 원티드
    • 우테코 프리코스
    • JavaScript
    • React
    • TypeScript
    • Node.js
    • Algorithm
      • 코플릿
      • 개념정리
    • 네트워크
    • 오류해결
    • 회고
    • 기술면접준비
    • git,github
    • 소소하게 궁금한것
    • Next.js Beta Docs 번역
    • 디자인패턴
    • 트러블슈팅
    • 번역

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 메모이제이션
  • 알고리즘

최근 댓글

최근 글

hELLO · Designed By 정상우.
Summer.dev
[Next.js] cannot be used as a jsx component.
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.