node 를 어떻게 수정 하 는 지 상세 하 게 설명 합 니 다.modules 파일
3591 단어 node modules수정 하 다.
때때로 npm 에 있 는 가방 을 사용 하면 bug 가 있 는 것 을 발견 할 수 있 습 니 다.우 리 는 어떻게 수정 하 는 지 알 고 있 습 니 다.그러나 다른 사람 은 일시 적 으로 업데이트 할 수 없 거나 우리 의 특별한 수요 가 있 습 니 다.다른 사람 이 수정 하고 싶 지 않 을 때 우 리 는 스스로 풍족 하 게 먹 을 수 밖 에 없습니다.그렇다면 우 리 는 어떻게 다른 사람의 소스 코드 를 수정 해 야 합 니까?우선,node 직접 수정modules 에 있 는 파일 은 잘 되 지 않 습 니 다.다시 설치 하면 의존 도가 없습니다.일반적으로 자주 사용 하 는 방법 은 두 가지 가 있다.
다른 사람의 코드 를 로 컬 에 다운로드 하여 src 디 렉 터 리 에 놓 고 수정 한 후에 수 동 으로 도입 합 니 다.
4.567917.fork 다른 사람의 코드 를 자신의 창고 로 옮 기 고 수정 한 후에 자신의 창고 에서 이 플러그 인 을 설치 합 니 다이 두 가지 방법의 결함 은 바로 업데이트 가 번 거 롭 습 니 다.우 리 는 매번 수 동 으로 코드 를 업데이트 해 야 하기 때문에 플러그 인과 동시에 업데이트 할 수 없습니다.만약 에 우리 가 수정 하고 자 하 는 코드 가 다른 사람의 작은 모듈 일 뿐 다른 대부분의 코드 가 움 직 이지 않 는 다 면 이 때 는 매우 투기 적 인 조작 이 있 습 니 다.웹 팩 alias 를 이용 하여 다른 사람의 코드 를 덮어 씁 니 다.
웹 팩 alias 의 역할
웹 팩 alias 는 일반적으로 경로 별명 을 설정 하여 경로 코드 를 적 게 쓸 수 있 도록 합 니 다.
chainWebpack: config => {
config.resolve.alias
.set('@', resolve('src'))
.set('#', resolve('src/views/page1'))
.set('&', resolve('src/views/page2'));
},
즉,웹 팩 alias 는 우리 가 쓴'약자 경로'를 바 꾸 고 nodemodules 에 있 는 파일 도 유효 합 니 다.이 럴 때 우 리 는 다른 사람의 소스 코드 에서 모듈 을 참조 하 는 경 로 를 우리 자신의 파일 로 바 꿀 수 있다.구체 적 인 조작 은 다음 과 같다.
다른 사람의 소스 코드 에서 수정 해 야 할 모듈 을 찾 아 src 디 렉 터 리 로 가세 요
웹 팩 alias 설정실제 조작 해 봐.
qiankun 프레임 워 크 의 patchers 모듈 을 예 로 들 면:
파일 이 인 용 된 경 로 는:./patchers(우리 가 차단 할 경로)입 니 다.
파일 내용:
src/assets/patchers.js 에 내용 을 복사 하고 import 경 로 를 절대 경로 로 변경 하 며 코드 를 추가 합 니 다.
웹 팩 alias 설정(vue-cli 4 를 사용 하고 설정 파일 은 vue.config.js):
const path = require('path');
module.exports = {
chainWebpack: config => {
config.resolve.alias
.set('./patchers', path.resolve(__dirname, 'src/assets/patchers.js'))
}
};
코드 를 실행 하고 콘 솔 인쇄 에 성공 한 것 은 우리 가 다른 사람의 코드 를 성공 적 으로 덮어 썼 음 을 나타 내 는 것 입 니 다.그리고 다른 사람의 코드 가 업데이트 되 었 을 때 우 리 는 동시에 업데이트 할 수 있 습 니 다.다만 이 모듈 의 코드 는 우리 가 사용자 정의 한 것 을 사용 합 니 다.포장 하 셔 도 돼 요.패 치 패키지 로 수정
발굴 우@Leemagination 지점 을 통 해 patch-package 를 사용 하여 node 를 수정 합 니 다.modules 안의 파일 이 더 편리 합 니 다.
절차 도 간단 하 다.
"scripts": {
+ "postinstall": "patch-package"
}
수정 nodemodules 안의 코드실행 명령:npx patch-package qiankun.
패 치 패 키 지 를 처음 사용 하면 프로젝트 루트 디 렉 터 리 에 패 치 폴 더 를 생 성 합 니 다.수 정 된 파일 diff 기록 이 있 습 니 다.
이 패키지 버 전이 업데이트 되면 명령 을 실행 합 니 다:git apply--ignore-whitespace patches/qiankun+2.0.11.patch.그 중에서 qiankun+2.0.11.patch 는 생 성 된 파일 이름 입 니 다.
엔 딩
이 방법 은 투기 도 많 고 한계 도 많 지만 사용 하기 도 좋 습 니 다.기술 은 끊 임 없 는 탐색 이 필요 합 니 다.무슨 문제 나 잘못 이 있 으 면 지적 해 주 십시오!
node 를 어떻게 수정 하 는 지 에 대한 자세 한 설명 입 니 다.modules 에 있 는 파일 의 글 은 여기까지 입 니 다.nodemodules 수정 내용 은 저희 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nginx 정리nginx 버 전 번 호 를 숨 기 는 것 은 간단 합 니 다. nginx 의 HttpCoreModule 은 server 라 는 이름 을 제공 합 니 다.tokens 명령, 이 명령 을 "server tokens o...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.