2012-10-20 4 views
1

나는 이것이 일반적인 질문이지만 모든 javascript와 css packer/minifier는 노드 용이며 많은 필요한 파일/모듈을 포함하고 있음을 알고 있습니다. Currenctly 우리는 AngularJs 응용 프로그램에서 일하고 있으며 우리는 모든 모듈을 다른 파일로 분리했으며 각 컨트롤러는 자체 파일을 가지고 있습니다 (이 접근법에 따라 https://github.com/scotch/sapling). 또한 서버 부분은 .NET MVC이므로 노드 또는 Java 도구에 익숙하지 않습니다. AngularJS javascript 및 css packer

내가

  1. 패키지 모든 하위 폴더를 포함한 폴더의 모든의 .js 파일을 (깊은 무제한) 나 축소를 실행하려면하거나 연결
  2. 옵션에이 파일을 경우
  3. 가 결정해야 할 것입니다 단지 모두를 다시 팩 간단한 명령을 실행하십시오

그래서 기본적으로 나는 간단하게 패커를 압축하고 명령 줄 도구를 압축 . 나는 Brunch으로 꾸러미를 만들었지 만, 내 코드를 몇 가지 코드로 감싸는 방식을 좋아하지 않습니다. 예를 들어

여기

https://github.com/scotch/sapling

을 그레이을위한 코드이며, 여기에 이들의 요구에 맞게 할 수가 포장 (모듈로 포장)의 모습

http://sapling.scotchmedia.com/js/app.js

아무것도 간단하다?

+0

나는 혼란 스럽다. 서버에서 실행되는 AngularJS 솔루션 (그러한 짐승이 있습니까?) 또는 .NET MVC 자산 캐싱 및 컨트롤러가 요청의 일부로 즉시 압축 및 압축 할 수 있습니까? [AMD (비동기식 모듈 정의) 형식] (http://addyosmani.com/writing-modular-js/)과 같은 것으로 모듈 형으로 내용을 지연로드 할 수 있지만 빌드 상황이 더 있습니다. 단일 페이지 앱의 경우 여기에서 제공됩니다. Require.js 문서의 [WHY AMD?] (http://requirejs.org/docs/whyamd.html)도 참조하십시오. –

+0

글쎄, 나는 require.js와 AMD를 사용하지만 나는 그 큰 재미가 아니에요. 내 질문을 더 명확하게 편집 할 것입니다. –

답변

3

일부 연구를 마친 후 .NET MVC 번들을 사용할 수 있음을 알았습니다.

debug = false 인 경우에도 디버깅을 위해 비공식 버전을 사용하는 방법을 찾았습니다. 크레딧은 chrisortman로 이동 :

여기

public static void RegisterBundles(BundleCollection bundles) 
    { 
     BundleTable.EnableOptimizations = true; 

     bundles.Add(new Bundle("~/bundles/vendor", new NonMinifyingJavascript()) 
      .IncludeDirectory("~/Areas/Qusion/App/libs/", "*.js", true)); 

     bundles.Add(new Bundle("~/bundles/app/finance", new NonMinifyingJavascript()) 
      .IncludeDirectory("~/Areas/Qusion/App/finance/", "*.js", true)); 
    } 

NonMinifyingJavascript 위 chrisortman 링크에서 내 코드입니다.

+0

'NonMinifyingJavascript()'를 사용할 필요가 없습니다. .NET MVC 번들에서는 Web.config 파일에'Debug = "true"'가 있으면 번들이나 축소하지 않아야합니다. 그것이 내가 사용하는 것이기 때문에 나는 이것을 안다. ;) –

+0

고마워요,하지만이 방법으로 나는 100 개가 넘는 파일을 선호하는 2-3 개의 비 압축 파일을