2016-12-27 6 views
0

는이 같은 정의 항목이 있습니다. webpack CommonsChunkPlugin의 진입 점을 정의하는 방법은 무엇입니까?</p> <pre><code>entry: [ 'webpack-hot-middleware/client', './src/app.jsx' ], </code></pre> <p>내 번들 크기로 주위 <strong>8메가바이트</strong> 크기 생성하기 것을 깨달았다 - 내 <code>webpack</code> 설정에서

그래서 나는 내가 이것을 위해 사용 에게 CommonsChunkPlugin를 사용하고이

entry: { 
    app: './src/app.js', 
    vendors: './src/vendors.js' 
    } 

처럼 뭔가 항목을 변경해야 할 것을 알고 별도의 조각으로 파일을 bundle.vendor.js

을 즉, 자바 스크립트 공급 업체를 분할하기로 결정 하지만 현재 설정되어있는 기존 항목 구성을 변경하는 방법을 알 수 없습니다.

entry: [ 
    'webpack-hot-middleware/client', 
    './src/app.jsx' 
    ], 
+0

commonchunksplugin은 개발 모드에서 도움이되지 않습니다. 번들 크기는 개발 모드에서 대부분 관련이 없습니다. 불완전하게 이름이 알려지지 않은 "dllplugin"은 별도의 미리 빌드 단계에서 개발 목적으로 별도의 사전 빌드 된 파일로 큰 리소스를 추출하는 데 유용합니다. –

답변

1

1. 당신은 당신의 진입 점에 대한 웹팩 말할 필요하고,이 경우, 당신은 업체에게 종속의 배열로 항목을 정의 할 수 있습니다. 이처럼 :

당신은을 최적화해야 귀하의 항목 웹팩 말할 필요가
entry: { 
    app: path.join(__dirname, 'path/to/app.jsx'), // prefer using absolute paths to avoid problems 
    vendors: ['jquery', 'lodash'] 
} 

2 : 당신이 플러그인의 구성 "이름"에 두 번째 문자열을 전달하고 공지 사항. 그것은 Webpack에 의해 생성 될 다른 파일의 이름입니다. 브라우저에 종속성을 올바르게 처리하는 방법을 알려주고 앱과 공급 업체 스크립트 태그 앞에 포함됩니다.

plugins : [ 
    new webpack.optimize.CommonsChunkPlugin({ 
     names: ['vendors', 'manifest'] 
    }) 
] 

내가 필요한 경우, 나는 repo with a working example of this입니다. CommonsChunk 부분은 유능한 구성입니다.

+0

어디서이 'webpack-hot-middleware/client'를 사용해야합니까? – WitVault

+0

이것은 또 다른 문제입니다. 그것은 이미 여기에 요청한 것처럼 보인다 : http://stackoverflow.com/questions/31844343/how-to-use-webpack-dev-server-multiple-entries-point –

+1

나는 따라 갔고'엔트리 : { app : [ '웹팩 핫 미들웨어/클라이언트', 는 './src/app.jsx' , 공급 업체 : [ 'lodash' ] }'도움을 어떤 방법 감사합니다. 원하는 경우 답변을 업데이트 할 수 있습니다. – WitVault