본문 바로가기
프론트엔드/리액트

'{}' 형식은 'ReactNode' 형식에 할당할 수 없습니다.

by 1005ptr 2022. 12. 10.
반응형

정말 고생한 에러 메시지다.

결론은 코어 공통 모듈의 리액트 버전을 언제 바꿨는지 모르겠는데 18로 바꿔버리면서 발생했다.(내쪽은 17버전)

리액트 18의 @types에 문제가 있는건지 기존 라이브러리들이 대응을 못하는건지 React.Component를 JSX.Component로 인식되지 못하고 발생하는 문제라던데

 

아래 설정을 추가하면서 해결이 됐는데

왜 발생하는지 근본적인 이유는 잘모르겠지만 라이브러리들이 많이 터져버린다.

라이브러리들 의존성 자체가 17버전까지 Compatibility를 가진다고 돼있어서 아무래도 라이브러리쪽이 문제인걸로 보인다.

"resolutions": {
  "@types/react": "17.0.2",
  "@types/react-dom": "17.0.2"
},

 

https://stackoverflow.com/questions/71791347/npm-package-cannot-be-used-as-a-jsx-component-type-errors/71828113#71828113

 

NPM package cannot be used as a JSX Component - Type errors

Ive been getting these strange type errors on my typescript project for certain packages. Ex: 'TimeAgo' cannot be used as a JSX component. Its instance type 'ReactTimeago<keyof IntrinsicElemen...

stackoverflow.com

 

반응형

댓글