>웹 프론트엔드 >JS 튜토리얼 >node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

青灯夜游
青灯夜游앞으로
2021-10-27 09:58:394154검색

node_modules에서 종속성 패키지를 수동으로 구성하는 방법은 무엇입니까? 다음 기사에서는 patch-package를 사용하여 node_modules의 종속 패키지를 수정하는 방법을 소개합니다. 도움이 되기를 바랍니다.

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

우선 이렇게 문제가 발생했습니다. 성공적으로 스탬프 처리된 PDF를 표시하기 위해 프로젝트에서 pdfvuer 타사 플러그인을 사용했는데, 이때 기사가 표시될 수 있음을 발견했습니다. 그런데 회사의 서명이 보이지 않네요. 이번에 드디어 해결 방법을 찾았습니다! ! 하지만 서명을 표시하는 수정된 코드는 종속 패키지 node_modules의 경로에 있습니다. 결국 node_modules 아래에서 수정된 파일은 npm install을 수행할 때마다 수동으로 수정해야 합니다. 즉시 불편함을 느끼기 시작했지만 여전히 문제를 해결할 방법을 찾아야 했습니다

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

처음에는 두 가지 해결책이 떠올랐습니다.

  • 다른 사람의 코드를 자신의 저장소에 포크하는 것입니다. , 수정 후 이 플러그인을 자신의 저장소에서 설치하세요.

  • 다른 사람의 코드를 로컬로 다운로드하여 src 디렉터리에 넣고 수정 후 수동으로 도입합니다. 이를 위해서는 불편한 점도 많습니다. 예를 들어, 구성 요소를 개별적으로 포장하는 것은 번거롭고 시간이 많이 걸리며 프로젝트를 부풀려 보이게 만들기도 합니다.

그런데 위의 어떤 방법도 너무 복잡해서 특정 파일에서 코드 한두 줄만 바꿨을 뿐인데 프로젝트 전체를 너무 비대하게 복사해야 했을 수도 있습니다. 수정하고 업데이트한 내용을 잊어버렸습니다. 매번 코드를 수동으로 업데이트해야 하며 플러그인과 동시에 업데이트할 수 없습니다. 이 경우 나는 돌아 서서 다시 지식 탐구를 시작했습니다. . . 그런 다음 patch-package를 사용하여 node_modules의 종속성 패키지를 수정하는 우수한 솔루션을 찾았습니다. [추천 학습: "nodejs tutorial"]

Solution

1.

`npm install patch-package --save-dev`

명령을 통해 패치 패키지를 설치합니다. 2. 프로젝트 루트 디렉토리에 있는 package.json 파일을 수정합니다

在 package.json 文件中的 scripts 中加入 "postinstall": "patch-package"

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

3. node_modules 종속 패키지

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

4에서 수동으로 소스 코드를 수정하여 npx 패치 패키지 패키지 이름 패치 파일

`npx patch-package package-name`

을 생성합니다. 수정할 종속성에 대한 패키지 이름입니다. 이 명령을 실행하면 프로젝트 루트 디렉터리에 패치 폴더가 자동으로 생성되고 해당 폴더에 패치 파일(패키지 이름+버전.패치)이 나타납니다. 그림에 표시된 대로:

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

예: pdfjs-dist 아래의 파일을 수정하고 싶기 때문에 실행한 명령은 다음과 같습니다. npx patch-package pdfjs-dist

node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명

5. 패치 패키지가 적용되었습니다

프로젝트 내 node_modules 파일을 수동으로 삭제(node_modules 폴더 강제 삭제: rimraf node_modules)하고, npm install 명령을 다시 실행하여 node_modules 종속성 패키지를 설치하세요. 설치가 성공한 후 이전에 수정한 node_modules 종속성 패키지의 파일을 확인하여 이전에 수정한 코드가 여전히 존재하는지 확인하세요. 패치 파일이 적용되었다는 의미입니다. 이전에 수정한 파일이 존재하지 않는다는 것은 패치 파일이 존재하지 않는다는 의미입니다.

더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 소개를 방문하세요! !

위 내용은 node_modules에서 종속성 패키지를 수동으로 구성하는 방법에 대한 간략한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 juejin.cn에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제