patch-package

영차영차·2023년 1월 16일
0

ReactNative

목록 보기
5/5
post-thumbnail

ReactNative에서 여러 npm package들을 사용하다보면 라이브러리간의 충돌이나 유지보수가 되지 않는등의 이슈로 인하여 라이브러리를 사용하지 못하는경우가 많이 발생한다.

이런 문제가 발생했을 때 대처를 어떻게 해야할까?

라이브러리 간의 충돌 문제, 3rd party 라이브러리가 업데이트가 되지 않아 에러가 발생하는등의 상황등이 많이 발생하는데, 이 문제를 해결하기 위한 방법은 여러가지가 있을 수 있다.

첫째, 해당 라이브러리를 fork한 뒤, 내 것으로 만들어 해결하는 방법이다. fork를 하게되면 추후에 CI/CD를 구축하는데 있어서 repo에 대한 권한을 별도로 발급받아야하는등의 작업들이 추가로 생기게 된다.

두번째, patch-package를 활용하는 방법이 있다.
npm install 이후에 스크립트를 사용하여 버전을 비교한뒤에 지정한 패치내용이 저장되는 것이다.
기존의 package내용에서 내가 지정한 내용으로 바꿔준다. fork를 따로 하지 않고도 사용할 수 있다는 장점이 있다.

yarn add patch-package

로 설치를 해주고,

package.json의 scripts에 "postinstall": "patch-package"를 추가해주면 npm install이 진행되고, 이후에 pach-package가 실행되게 된다.

npx patch-package "package명"을 입력하면, patches폴더에 pactch된 파일이 생성되고,
이후 npm install을하면 install된 후, patch 파일을 적용해 준다.

이렇듯 native 라이브러리가 잘못된 경우에 혹은 수정이 필요한 경우에 patch-package로 문제를 해결할 수 있다.

profile
FE Developer

0개의 댓글