저는 현재 JavaScript를 사용하여 Windows 8 응용 프로그램을 작성하는 팀원입니다. 우리는 npm 및 browserify를 사용하여 종속성을 관리하고 모듈을 AMD 브라우저 친화적 형식으로 변환합니다.복잡한 응용 프로그램 구조를위한 NodeJS 로컬 모듈
우리가 실행하고있는 한 가지 문제점은 미친 경로입니다. 이는 응용 프로그램 "구성 요소"내에 최상위 폴더가 있기 때문입니다. 이 폴더에는 여러 개의 중첩 된 UI 구성 요소/모듈이 포함되어 있습니다. 이러한 모듈은 때로는 lib 디렉토리에있는 lib 유틸리티 및 도우미를 필요로합니다.
예를 들어 "my/app/components/product/grid/item"에있는 모듈의 경우 "my/app/lib/helpers/view"에있는 도우미 모듈이 필요할 수 있습니다.
요구 사항 경로가 약간 미친 및 매우 못생긴 : require ("../../../../lib/helpers/view");
우리는 모듈 방식으로 응용 프로그램을 빌드하는 데 최선을 다하고 있습니다. 이제 나는 이것에 접근하는 적절한 방법이 우리의 구성 요소 모듈이 이러한 유틸리티 헬퍼 모듈에 의존하게하는 것이라고 생각할 것입니다. 나는 lib 헬퍼를 자신의 외부 전용 git repo에 넣을 수 있었지만 다른 팀에게 액세스 권한을 부여하는 것 (개인 소유의 저장소는 느리다)과 관련하여 고통을 겪고있다. 또한이 모듈은 애플리케이션에서만 사용되므로 변경을 수행하고 변경 사항을 적용한 다음 애플리케이션 및 npm 업데이트로 돌아가는 데 시간이 낭비됩니다. 이것은 일부에게는 문제가되지 않지만, 실제로이 문제를 해소하면 실제 속도가 훨씬 빨라질 수 있습니다.
nim은 package.json 구성 요소 내에 "my/app/lib/helpers/view"를 설치할 수 있습니까? 그러나 npm install은 자동으로이 작업을 수행하지 않습니다.
이 문제를 해결하는 몇 가지 다른 방법이 있습니다 (NODE_PATH, 아마도 npm install hook 또는 npm preinstall 스크립트를 사용합니다).하지만 다른 누구에게도 비슷한 문제와 해결책이 있는지 알고 싶었습니다. 당신이 가능하게 할 수
현재 나의 접근 방식은 빌드 할 때마다 배치 스크립트를 실행하여 NODE_PATH에 대한 환경 변수 var를 설정하는 것입니다. – pbo
좋아, 좀 더 npm 링크를 가지고 놀면 여기로 갈 수 있습니다. 내 응용 프로그램 모듈은 package.json 파일을 가지고 있습니다. npm 링크를 사용하면 해당 모듈을 사용할 수있게되고, npm 링크를 사용하면 해당 모듈을 사용할 수있게됩니다. 여기에있는 파일은 새 설치에 npm 링크가 있는지 확인해야합니다. npm install은이 모듈들을 링크하지 않습니다. – pbo
별도의 repos가가는 길이라고 생각합니다. – Domenic