'JSX.IntrinsicElements' 유형에 'mesh' 속성이 없습니다. 경고 해결법
전 영상과 똑같이 npm으로 설치하는 과정에서 에러가 발생하시는 분들을 위한 제 해결법입니다. (2025-02 기준)
강사님이 올려주신 소스코드 다운로드
이 방법은 강사님이 올려주신 폴더를 열어서 npm i 만 하시면 됩니다.
직접 다운그레이드
R3F가 현재(2025-02) 기준 React 19를 지원을 안합니다.
그렇기 때문에 React 18로 다운그레이드를 해줘야되는데요
React 다운그레이드
React 최신버전 설치
npm create vite@latest우선 최신버전을 설치한 이후에
다운그레이드
npm uninstall react react-dom
npm install react@18 react-dom@18react와 react-dom을 삭제후 18버전으로 설치합니다.
3. 확인
npm list react react-dom터미널로 확인하시면 18버전으로 다운그레이드 됩니다.
하지만 여기서 끝이 아니라 Typescript와 drei 설치시에도 문제가 발생합니다.
mesh를 작성하게 되면 "JSX.intrinsicElements" 형식에 "mesh" 속성이 없습니다. 라는 경고창이 옆에 계속 뜨는데요
실행결과는 잘 출력 되지만 거슬려서 해결법을 적어봅니다.
'JSX.IntrinsicElements' 에러 해결법
package.json 파일에
type/react와 type/react-dom이 19버전으로 되어 있어 호환이 안되어 발생하는 에러입니다.
npm install @types/react@18 @types/react-dom@18
터미널에 입력해주시면 package.json 파일에서 18버전으로 다운그레이드 됩니다.
또 drei를 설치할때
three-mesh-bvh@0.7.8: Deprecated due to three.js version incompatibility. Please use v0.8.0, instead
에러가 발생하는데요 이는 three.js버전과 three-mesh-bvh 버전 간의 호환성 문제입니다.
drei 라이브러리 설치법
터미널에
npm install @react-three/dreinpm install three-mesh-bvh@0.8.0 --legacy-peer-deps
그럼 3가지 세팅이 완료됩니다
Answer 2
1
안녕하세요. 수로님. 먼저 친절하게 공유해주셔서 감사드립니다.
Typescript와 drei 설치시에도 문제가 발생하는군요.
type도 react 18버젼으로 낮추고 three-mesh-bvh도 변경하는 법을 알려주셔서 감사드립니다.
강의를 업데이트할때 참고해서 테스트하고 업데이트 하겠습니다.
강의들으시면서 진행 해보시다가 안되는 부분 있으시면 알려주세요. 감사합니다 :)
0
안녕하세요, 인프런 AI 인턴입니다. 김수로님.
React Three Fiber(R3F) 프로젝트에서 발생할 수 있는 JSX.IntrinsicElements 오류 및 React와 관련된 여러 문제를 해결하는 방법에 대해 공유해 주셔서 감사합니다. 아래 추가적인 설명 및 기존에 있었던 유사한 문제에 대한 답변을 통해 더 잘 이해하실 수 있도록 도와드리겠습니다.
문제 설명 및 해결 방법
R3F와 React 19 호환성 문제:
- 현재 R3F가 React 19를 지원하지 않아 React 18로 다운그레이드가 필요합니다.
npm install react@18 react-dom@18명령어로 React 18을 설치하면 됩니다. 이후npm list명령어로 버전을 확인합니다.
- 현재 R3F가 React 19를 지원하지 않아 React 18로 다운그레이드가 필요합니다.
JSX.IntrinsicElements 오류:
JSX.IntrinsicElements의mesh속성에 대한 오류는@types패키지 버전이 호환되지 않아서 발생할 수 있습니다.npm install @types/react@18 @types/react-dom@18명령어로 타입 패키지를 다운그레이드 해주세요.
drei 설치 및 호환성 문제:
three-mesh-bvh@0.7.8의 버전 문제는three-mesh-bvh@0.8.0을 설치하여 해결합니다.npm install three-mesh-bvh@0.8.0 --legacy-peer-deps명령어로 설치할 수 있습니다.
관련 질문 및 해결 사례
이 답변에서는 Typescript와 Vite 환경에서의 설정 방법을 확인할 수 있으며, 해결하는 데 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
팀& 서브 에이전트 실활용 방법은 어디에서 볼 수 있을까요?
0
9
1
선생님 강의토대로 개발중인데 질문이 하나있습니다 급함
0
14
2
To-Do App
0
8
0
MCP 서버 설치 내용이 실제와 달라 좀 헷갈립니다.
0
19
2
MCP가 토큰을 낭비한다고 뒷쪽에서 설명해주셨는데요.
0
16
2
[55강 질문] 로컬 커밋관련 질문
0
15
2
claude: command not found
0
14
2
git사용자 정보 설정 확인 관련
0
14
2
tdd-red 스킬에 허용 에러 범위에 대한 질문
0
17
2
claude code 실행시간
0
21
2
플랜모드에 대해 업데이트 내용이 있었던 것 같습니다!
0
15
2
서브에이전트 질문입니다.
0
17
2
ai 도구 질문
0
61
1
오브젝트에의 이벤트 감지 vs 레이캐스팅
0
74
2
섹션 10을 들었을때 궁금증
0
96
2
material 파트까지 들은 후 생긴 궁금증
0
160
1
zoom과 fov의 차이점이 잘 이해가 안됩니다.
1
301
2
1강 관련하여 의견을 여쭙고 싶은 게 있습니다.
0
145
1
onClick 이벤트함수로 raycaster 방향이 자동으로 set되나요?
0
192
2
화면에 렌더링은 되는데 코드에서 빨간줄이 떠요
0
390
2
문제 해결했습니다.
0
195
1
문제 있어요! alias Path @ 문제
0
476
2
dom / svg / canvas
0
235
1
물질을 클릭했을 때 이벤트
0
411
1

