2016-10-29 2 views
2

babel과 함께 사용하여 웹 작업자 코드에서 es6 가져 오기를 지원하려고합니다.worker-loader에서 webpack babel-loader 및 es6을 사용하는 방법은 무엇입니까?

나는이 webpack.config.js

{ 
    test: /\.worker\.js$/, 
    loader: "worker!babel", 
    presets: ['es2015'] 
    } 
이 올바르게 그러나이 파일이 바벨을 통해 실행되지 않습니다 d46f60b8e184bf8b1cb8.worker.js

같은 해시 이름으로 노동자에 대한 sepearte 번들 파일을 생성

이 변환 내에서 다음과 같은 설정 및 es5로 변환되었습니다. 따라서 원시 es6 가져 오기 statmenets 및 브라우저에서 실패 구문을 포함합니다. 다음과 같습니다

{ 
    test: /\.worker\.js$/, 
    loader: "babel!worker", 
    presets: ['es2015'] 
    } 

을하고도 성공하지 preLoaderspostLoaders로 이동 시도 :

/* 0 */ 
/***/ function(module, exports) { 

    import _ from 'lodash'; 

    var o = {foo: 'foo'}; 

    _.has(o, 'foo'); // true 

    setInterval(() => { 
     postMessage({tick: Date.now()}); 
    }, 1000); 


/***/ } 
/******/ ]); 

나는 로더의 순서를 전환 시도 좋아합니다.

답변

2
저도 같은 문제로 실행 및 옵션 here 아래에 언급 된 쿼리 문자열 매개 변수를 사용하여 성공을 거두었

: 그래서

:

{ 
    test: /\.worker\.js$/, 
    loader: "worker!babel?presets[]=es2015" 
}