IgnorePlugin

IgnorePlugin은 정규 표현식 또는 필터 함수와 일치하는 import 또는 require 호출에 대한 모듈 생성을 방지합니다.

Using regular expressions

  • resourceRegExp: 리소스 테스트를 위한 정규 표현식
  • contextRegExp: (선택) 컨텍스트 (디렉터리) 테스트를 위한 정규 표현식
new webpack.IgnorePlugin({ resourceRegExp, contextRegExp });

Using filter functions

  • checkResource (resource, context)resourcecontext를 인수로 받는 필터 함수로, 불리언 값을 반환해야 합니다.
new webpack.IgnorePlugin({
  checkResource(resource) {
    // 리소스를 사용합니다
    return true | false;
  },
});

Example of ignoring Moment Locales

moment 2.18 부터, 모든 로케일이 코어 라이브러리와 함께 번들로 제공됩니다 (깃허브 이슈를 참고하세요).

IgnorePlugin에 전달된 resourceRegExp 파라미터는 import 또는 require 되는 해석된 파일 이름 혹은 절대 모듈 이름에 대해 테스트 되지 않고, 가져오기가 실행되는 소스 코드 내에서 require 또는 import로 전달된 문자열 에 대해 테스트 됩니다. 예를 들어 node_modules/moment/locale/*.js를 제외하려는 경우 다음과 같은 작업이 수행되지 않습니다.

-new webpack.IgnorePlugin({ resourceRegExp: /moment\/locale\// });

moment는 아래의 코드로 가져오기 때문입니다.

require('./locale/' + name);

첫 번째 정규 표현식은 './locale/' 문자열과 일치해야 합니다. 그다음 두 번째 contextRegExp 파라미터를 사용하여 가져오기가 수행된 특정 디렉터리를 선택합니다. 다음은 로케일 파일이 무시되는 경우입니다.

new webpack.IgnorePlugin({
  resourceRegExp: /^\.\/locale$/,
  contextRegExp: /moment$/,
});

이는 'moment'로 끝나는 디렉터리에서 './locale'과 일치하는 모든 require 문이 무시됨을 의미합니다.

7 Contributors

simon04byzykDullReferenceExceptionEugeneHlushkoFadySamirSadekiamakulovchenxsan

Translators