2017-12-14 15 views
0

로컬 모듈 A 로컬 모듈 B에 대한 링크는 npm link입니다. 그리고 모듈 B는 의존성으로 반응합니다. 모듈 A가 반응해야하는 경우 모듈을 찾을 수 없습니다.링크 된 npm 모듈의 종속성이 필요합니까?

(NPM 링크 제외)이 간주 '정상'패키지 모듈 A가없이 npm link를 사용하는 경우 모듈 A에서 반응을 필요로 할 수있는 방법이 있나요 모듈 B.

를 설치 node_modules에서 반응을 얻을 것이다 경우 종속성으로 수동으로 나열 하시겠습니까?

+0

명시 적으로 의존성으로 선언하지 않고 모듈'A'에서'react'를 사용하고 싶습니까? – Will

+0

예, 'B'모듈이 일반 게시 모듈 일 경우 – Flion

답변

1

짧은 답변 : 번호

긴 답변 : 바로 글로벌 폴더를 통해 B를 모듈에 모듈 A의 node_modules에 심볼릭 링크를 생성npm link. npm install처럼 종속성 해결/설치/병합을 제공하지 않습니다. 모듈 A와 B를 동시에 개발하는 경우에 유용합니다. 당신은 잠재적으로 NODE_PATH 환경 변수와 혼란 지정할 수

모듈 B의 node_modules 소스로 당신의 require 초 동안 모듈 B에 설치된 패키지에 대한 변경 사항은 A에서 패키지 트리의 병합/설치/재 해결을 필요로하지 않습니다 A를 실행하고 A에서 B의 종속성을 효과적으로 사용할 때.

그러나 보이지 않는 종속성을 만들려는 이유를 다시 생각해보십시오. 모듈의 캡슐화를 중단하려고합니다. 모듈 A에 react이 필요한 경우 A는 package.json에서 해당 모듈을 지정해야합니다. 나중에 B를 포함하지 않는 다른 프로젝트에 모듈 A를 사용하기로 결정하면 문제가 없습니다. 모듈 B에서 react을 제거하기로 결정한 경우, A를 깨뜨리지 않습니다.