티스토리 뷰

가끔 라이브러리 자체에 버그가 있어서 바로 고쳐야하거나,
라이브러리만으로는 지원이되지 않는 기능이 들어가야하는 경우가 있다.

 

이때까지 오픈소스를 변경해서 사용하기 위해서는 Github에서 folk하고 수정 한 뒤 가져오는 방식밖에 없는줄 알았는데, 훨씬 단순한 방법이 있었다.

 

patch-package라는 노드 모듈을 설치해서 사용하는 방식인데

 

1. 먼저 patch-package, postinstall-postinstall를 설치한다.

yarn add patch-package postinstall-postinstall

postinstall-postinstall이건 패키지 설치시 뿐만 아니라 패키지를 삭제할 때도 postinstall 스크립트를 실행해주는 라이브러리이다.

 

2. package.json 에서 postinstall 스크립트를 만들어준다.

package.json
"scripts": {
    postinstall: "patch-package"
    ...
}

패키지를 설치한 뒤 항상 patch-package해서 전체 패키지에 패치버전을 적용할 수 있도록 한다.

 

3. node_modules에서 수정해야할 패키지를 변경한 뒤 다음과 같이 명령어를 작성한다.

yarn patch-package <PACKAGE_NAME>
or
npx patch-package <PACKAGE_NAME>

patchs 폴더에 수정 기록에 대한 파일 생성된다.

댓글