2016-10-18 4 views
1

좋아, typescript로 놀고있어 코드를 축소하기 위해 사용하고 싶지만 이해할 때 타이프 스크립트는 그렇게하지 않는다. 그래서 나는이 같은 내 Gruntfile,Typescript & Uglify 작업

module.exports = function(grunt) { 
    grunt.initConfig({ 
    pkg: grunt.file.readJSON('package.json'), 

    ts: { 
     default: { 
      files: { 
       '/js/builds/admin.js': ['/typescript/admin/*.ts'], 
       '/js/builds/main.js': ['/typescript/main/*.ts'], 
       '/js/builds/public.js': ['/typescript/public/*.ts'] 
      } 
     }, 
     options: { 
      fast: 'never', 
      sourceMap: false 
     }, 
    }, 

    'uglify': { 
     options: { 
      preserveComments: 'some', 
     }, 
     my_target: { 
      files: { 
       //Libs Files 
       '/assets/js/libs.js': [ 
        '/js/libs/jquery-3.1.1.min.js', 
        '/js/libs/underscore-1.8.3.min.js', 
        '/js/libs/backbone-1.3.3.min.js', 
       ], 

       //Plugin Files 
       '/assets/js/plugins.js': [ 
        '/js/plugins/alertify.min.js', 
       ], 

       //Admin Build 
       '/assets/js/our_admin.js': [ 
        '/js/builds/admin.js' 
       ], 

       //Main Build 
       '/assets/js/main.js': [ 
        '/js/builds/main.js' 
       ], 

       //Public Build 
       '/assets/js/public.js': [ 
        '/js/builds/public.js' 
       ] 
      } 
     } 
    }, 

    watch: { 
     'TypeFiles': { 
      files: ['/typescript/**/*.ts'], 
      tasks: ['ts'], 
      options: { 
       spawn: false 
      }, 
     }, 

     'JSFiles': { 
      files: ['/js/**/*.js'], 
      tasks: ['uglify'], 
      options: { 
       spawn: false, 
      }, 
     }, 
    } 

}); 

    grunt.loadNpmTasks("grunt-ts"); 
    grunt.loadNpmTasks('grunt-contrib-uglify'); 
    grunt.loadNpmTasks('grunt-contrib-watch'); 
}; 

를 구축하고 내가 뭘하려고했던 표준 자바 스크립트 후 자동 실행 내 추하게 작업으로 구축 할 수 타이프 라이터를 얻을 수 있었다.

lib/plugin 파일을 추가/편집하면 작동하지만 typescript 파일을 편집 할 때 JS 파일을 빌드하지만 실행할 수는 없습니다. 업무를 uglify?

그래서 ts 작업이 완료된 후 uglify 작업을 수행하려면 어떻게해야합니까?

감사합니다.

답변

1

이 문제에 대한 해결책이 있다고 생각합니다. 그것은 시간이 좀 걸릴 것 같은 최고의 옵션으로

'JSFiles': { 
     files: ['/js/**/*.js', '/typescript/**/*.ts'], 
     tasks: ['ts', 'uglify'], 
     options: { 
       spawn: false, 
     }, 
    }, 

지금이 수도 : 나는 그렇게 같이 주시해야하는 파일의 목록에 타이프 스크립트 파일을 작업을보고 내 JSFiles에 TS 작업을 추가하고 추가 타이프 스크립트 및 축소 작업을 완료하십시오. 하지만 Symfony2에서이 프로젝트를 시작했고, 새로운 프로젝트를 설정하여 그 프로젝트를 가리키는 것을 선호합니다. 파일.

감사합니다.