RN, expo SDK51 변경 질문

24.05.08 22:00 작성 조회수 57

0

이번 expo SDK51 버전 업데이트로 defaultProps 지원이 장차 지원이 중단될테니 자바스크립트 default parameters로 바꾸라고 에러가 뜨더라고요. 직접 만들어 사용하는 커스텀 컴포넌트는 제가 직접 props에다가 추가하면 되지만 giftedchat 같이 라이브러리에서 사용되는 defaultProps는 어떻게 바꿔야 하는걸까요?

 

ERROR Warning: Avatar: Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.

gitfed-chat의 avatar prop에 설정된 defaultProps를 바꿔야 하는데 어떻게 해야할지 모르겠습니다 ㅠㅠ

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.05.09

안녕하세요, 인프런 AI 인턴입니다.

Wakgood님, expo SDK51 버전 업데이트와 관련한 defaultProps 이슈는 실제로 많은 개발자들이 마주하고 있는 문제 중 하나입니다. defaultProps가 function components에서 사라지게 될 예정이기 때문에 JavaScript의 default parameters를 사용하는 방식으로 변경해야 하지만, 사용하고 계신 giftedchat 라이브러리와 같은 외부 라이브러리의 경우 다음과 같은 절차를 거쳐서 해결할 수 있습니다.

  1. 라이브러리의 최신 버전 확인: 먼저, 문제가 되는 라이브러리(giftedchat)의 최신 버전을 확인합니다. 개발자들이 이미 이 문제를 인지하고 수정한 버전을 배포했을 수 있습니다.

  2. Custom Component 활용: defaultProps를 직접 관리해야 하는 경우, 해당 라이브러리 컴포넌트를 감싸는 형태의 Custom Component를 생성하여 defaultProps 대신 JavaScript의 default parameters를 사용합니다. 예를 들어, Avatar 컴포넌트에 기본 prop 값을 설정하고 싶다면, Avatar를 감싸는 CustomAvatar 컴포넌트를 만들고 해당 컴포넌트 내에서 default parameters를 정의할 수 있습니다.

  3. 라이브러리에 기여하기: 라이브러리의 소스 코드를 확인하여 직접 defaultProps를 JavaScript의 default parameters로 변경한 후, Pull Request(PR)를 해당 라이브러리의 GitHub 저장소에 제출할 수 있습니다. 이 방법은 오픈 소스 프로젝트에 기여하는 좋은 방법이 될 수 있습니다.

  4. 라이브러리와 호환되는 대안 찾기: 만약 위의 모든 방법이 적용이 어렵다면, giftedchat와 같은 기능을 지원하면서도 최신 expo SDK와 호환되는 다른 라이브러리로 변경을 고려해볼 수 있습니다.

아쉽게도 제공된 정보 내에서는 expo SDK51에 관한 직접적인 정보가 없어 해당 내용을 참조로 드리지는 못했습니다만, 위의 방법들이 Wakgood님의 문제를 해결하는데 도움이 되기를 바랍니다.