2014-12-05 9 views
4

최근 require.js에서 webpack으로 이동하고 일부 node_module에는 .min 파일이 내장되어 있습니다. node_module에서 파일을 사용할 때 나는 단지 require('my-module')을 수행하고 구성없이 즉시로드합니다. 그러나 이것은 개발 버전 또는 더 큰 버전을로드 할 것입니다.node_modules를 최소화해야합니까? 아니면 클라이언트에 배포하기 위해 제공된 축소 버전을 사용해야합니까?

예를 들어 react가로드되었습니다. require('react/addons')하지만이 버전은 축소 버전이 아닙니다.

내 질문은 :

  • 나는 일반적으로 모듈을로드 한 후 모든 것을 작게를해야 하는가?
  • 제공된 .min 파일을 사용해야하며 모든 것을 다시 축소해야합니까? (이 방법으로 디스크를 많이 절약 할 수 있습니다)
  • 더 좋은 방법이 있습니까? 축소 된 파일을 자동으로 정리할 수 있으면 좋을 것입니다. 지금은

, I 앱 구축 축소 된 버전로드 웹팩의 별칭을 변경하고 있습니다 :

myConfig.resolve.alias.phaserUnFixed = "nodeModules/phaser/build/custom/phaser-no-physics.min.js"; 
myConfig.resolve.alias.react = "nodeModules/react/dist/react-with-addons.min.js"; 
myConfig.resolve.alias.lodash = "nodeModules/lodash/dist/lodash.compat.min.js"; 
myConfig.resolve.alias.moment = "nodeModules/moment/min/moment.min.js"; 

을하지만이 중 하나 ... 당신은 아무것도 생각할 수있는 좋은 방법 아니다 보다 나은?

답변

1

이 답변을 찾고 계신지 모르겠습니다 만,이 경우 가장 좋은 방법은 생산을 위해 웹팩을 사용하고 축소 된 파일을로드하는 것에 대해 걱정하지 않기위한 것입니다. 전체 번들에서 webpack을 실행하면 모든 사용되지 않은 코드 패턴이 제거되어 어쨌든 축소됩니다.

+0

서로 다른 파일을 가진 phaser라는 lib가 있습니다. 기본값은 다른 많은 도구와 함께 제공됩니다. 그러나 그것은 또한 내가 필요한 것을 가진 다른 파일들을 가지고 있습니다. 전체 파일은 1MB이고 필요한 부분은 300KB입니다. 너는 무엇을 제안 하는가? –

+0

나는 webpack이 순간, lodash 및 반응과 같은 나머지 부분을 축소 시키도록 할 것이지만 phaser에 대해서는 크기 때문에 별칭을 사용해야한다고 생각합니다. 빌드 작업 속도가 느려집니다. 번들 후에 uglify하면 결과 출력 파일은 같지만 빌드 시간 문제 일뿐입니다. –

+0

나는 webpack이 브라우저에서 비동기 적으로로드되는 많은 파일을 없애기 위해 고안된 동일한 관심사를 가지고 있지만 drawaback은 매우 큰 파일로 끝나는 것입니다. 이 질문이 인기가 없다는 것은 수치스러운 일입니다. 많은 사람들이 웹팩을 사용하고 있으며 많은 사람들이 이러한 우려를 가지고 있어야합니다. – alexserver