React Native v0.67.3 이전 버전에서 한글을 포함한 cjk(chinese japanese korean) 폰트에서 TextInput 사용할 때, 작성 중간에 커서를 이동하여 작성을 하면 글자가 깨지는 이슈가 있다. (동영상 참고)
가장 간단한 해결책은 React Native의 버전을 올리는 것이었다.
하지만 많은 프로젝트들이 그러하듯, 이미 사용하고 있는 React Native 버전과 의존성을 가지는 패키지들이 많을 것..😭 최대한 외부 의존성을 줄이며 개발한다고 해도 쉽지 않다..그래서 해당 이슈도 노운 이슈로 남겨져 있었다..
그렇다면 해당 이슈를 해결한 PR을 찾아서 React Native의 해당 부분만 수정하여 patch-package
를 통해 npm install
/ yarn install
시 업데이트 되지 않도록 하자!
관련 이슈를 구글링하다보니 어렵지 않게 머지된 PR을 찾을 수 있었다! 더더욱 반가웠던 건 contributor가 한국분!! 펄-럭 🇰🇷
친절하게도 patch-package를 위해 PR을 바로 찾아갈 수 있도록 이슈 코멘트를 남겨두셨다! @kmsbernard 버나드님 감사합니다!
삭제된 코드의 이유를 묻는 코멘트에 대한 버나드님의 답변삭제된 코드에서는 문자열 비교하는 메소드 호출을 피하는 동작이 있다. 한글도 다른 중국어, 일본어 처럼 비교하는 동작이 필요하다.
개발 중인 프레임워크, 라이브러리의 버전을 올리기 위해서 함께 버전을 올려야 할 의존성을 가진 패키지가 너무 많다면 patch-package를 이용해 버전을 올려보는 것도 괜찮은 해결책인 것 같다 🥰