2016-08-12 3 views
1

우리에게는 전통적으로 클라이언트 측에만있는 라이브러리가 있습니다. HTTP 요청 (또는 여러 다른 종속성 라이브러리)을 사용하여 REST 호출을 작성합니다. 라이브러리를 사용할 때, 사용자는 특정 요청 제공자와 함께 초기화 할 것이다.우리 도서관에서 어떻게 webpack에 의존성을 건너 뛰라고 말합니까?

예에서 webpack을 사용하여 라이브러리를 활용합니다.

이제 node-fetch를 사용하도록 확장되었으므로 누군가 nodej에서 사용하려고해도 지원됩니다.

webpack을 사용하는 사람들을 위해 webpack은 노드 페치를 팩하려고하고 브라우저에서 요구 호출이 실패하고 있습니다. 우리는 설정으로이 문제를 해결받을 수있는 외부

"externals" : { 
    "node-fetch": "{}" 
} 

소비자가 웹팩 대상을 사용하는 경우 있도록 우리의 라이브러리를 정의 할 수있는 방법이 있나요 : 웹, 그것은 노드 가져 오기에 대한 요구 점검을 건너 뛸 거라고는? 마찬가지로 소비자가 webpack target : nodejs를 사용하는 경우 노드 가져 오기 구성 요소가 포함되어야합니다.

문제의 프로젝트는이를보고 https://github.com/OfficeDev/PnP-JS-Core

답변

1

감사합니다. 따라서 This commit and conversation linked to it에 따르면 자동 모듈 분석 필드 (webpack 해석기 인스턴스에 대해 described-resolve이라고도 함)는 대상이 무엇인지에 따라 변경됩니다.

기본적으로 웹팩 빌드에서 대상이 node 인 경우 package.json 필드의 해상도는 기본적으로 main 필드가되며, 기본값은 browser 필드가 기본적으로 우선합니다.

자세한 참조 https://github.com/webpack/webpack/issues/151

+0

package.json 업데이트 PR이 수정되어 종료되었습니다. 감사합니다 :) 나는이 모양을 어떻게 생겼는지에 대한 예로서 여기에 남겨 두었습니다. https://github.com/OfficeDev/PnP-JS-Core/blob/master/package.json 및 여기에 'spec'https://github.com/defunctzombie/package-browser에 대한 링크가 있습니다. -field-spec –