webpack을 bundler로 사용하는 응용 프로그램을 가져와야하는 구식 일반 ES5 JavaScript가 있습니다. 문제는 이러한 파일의 위치가 경로가 동적 인 폴더에 있다는 것입니다. webpack이 require
및 require.context
의 표현식과 잘 작동하지 않는 것으로 보입니다. 모든 디렉토리에있는 파일과 하위 디렉토리를 필요로하는 것으로 알려져 경로 디렉토리에 대한동적 디렉토리에서 webpack을 사용하여 JavaScript를 요구하는 방법
는,이 방법은 잘 작동합니다
let domainRequires = require.context('./app/domain', true, /\.js$/); domainRequires.keys().forEach(domainRequires);
내가 require.context
에 식을 사용할 수 없기 때문에, 그냥 시도 일반 require
및 사용이 를 작동하지 않습니다 :
require('../../path/to/code/my-library-' + versionNumber + '/domain/clazz.js');
전체 상대 경로 사용
require.context('../../path/to/code', true, /^my-library-.*\/domain\/.*\.js$/);
어떤 생각, 제안, 솔루션은 환영받을 것이다 :
는 또한require.context
을 사용하지만, 정규식 부분을 강화하는 것은이 작업과 행운이 없었어요 얻기 위해 시도했습니다. 웹팩으로 제 3자를 사용할 필요가 있다면 괜찮습니다.
동적 변수가 여러 개인 경우 어떻게해야합니까? 루프에서 요구해야합니다. 이것은 진짜 고통입니다. 왜 그들이 구현하기가 어렵게 만들었는지 모르겠다. – tylik
이 솔루션은 루프를 필요로한다. forEach를 참조하십시오. @tylik –