2014-04-27 3 views
11

제 3 자 공급 업체의 클라이언트 측 자산을 완전히 설치하고 업데이트하는 방법을 알아 내려고 정말 고심하고 있습니다. 필자가 정말로하고 싶은 것은 현재 버전을 가져 와서 제작 준비 파일을 고정 된 위치에 복사하는 것이다. 내가 지금까지 가지고 올 수 있었던 가장이 추한 일 :bower 및 gulp가 포함 된 깨끗한 프런트 엔드 워크 플로 란 무엇입니까?

gulp.task('bower', ['clean','load'], function(){ 
    var bowerFilesToMove = [ 
     'angular*/*', 
     'bootstrap/dist/*', 
     'fontawesome/*', 
     'jasny-bootstrap/dist/*', 
     'jcrop/css/*', 
     'jcrop/js/*', 
     'jquery/dist/*', 
     'jquery-align-column/*', 
     'jquery-autosize/*', 
     'jqueryui/ui/minified/*', 
     'moment/min/*', 
     'select2/*', 
     'underscore/*', 
    ]; 

    bowerFilesToMove.forEach(function(filespec){ 
     gulp.src('./bower_components/'+filespec+'.css') 
      .pipe(flatten()) 
      .pipe(gulp.dest('public/vendor/css')); 
    }); 

    bowerFilesToMove.forEach(function(filespec){ 
     gulp.src('./bower_components/'+filespec+'.js') 
      .pipe(flatten()) 
      .pipe(gulp.dest('public/vendor/js')); 
    }); 

    bowerFilesToMove.forEach(function(filespec){ 
     gulp.src('./bower_components/'+filespec+'.map') 
      .pipe(flatten()) 
      .pipe(gulp.dest('public/vendor/js')); 
    }); 

    gulp.src('./bower_components/jqueryui/themes/*') 
     .pipe(gulp.dest('public/vendor/css/themes')); 

    gulp.src('./bower_components/bootstrap/dist/fonts/*') 
     .pipe(gulp.dest('public/vendor/fonts')); 

    gulp.src('./bower_components/fontawesome/fonts/*') 
     .pipe(gulp.dest('public/vendor/fonts')); 
}); 

gulp.task('clean', function(){ 
    return gulp.src('./public/vendor') 
     .pipe(clean({force: true})); 
}); 

gulp.task('load', function(){ 
    return bower(); 
}); 

내가 클라이언트 배포에 대한 모범 사례와 도구를 알아 내기 위해 노력을 많이 읽어 봤는데, 그러나 다만 받고있다 나 자신은 점점 더 혼란스러워했다. 프론트 엔드는 단지 패키지를 선택하고 "작곡가 업데이트"를 실행하는 것보다 더 복잡 할 것이라고 확신합니다. 그러나 이것은 상당히 엉성한 것으로 보입니다. 그것을 처리하는 더 좋은 방법은 무엇입니까?

답변

10

특정 공급 업체 자산을 수동으로 디렉토리로 복사하는 대신 프로덕션 수준의 응용 프로그램에서 작업 할 때마다 빌드 프로세스에서 <script> 태그를 참조하는 관련 마크 업 파일을 살펴보고 무엇을 복사해야하는지 확인하십시오. 이렇게하면 실제로 사용되지 않는 스크립트를 복사하거나 배포하지 않아도됩니다.

https://github.com/yeoman/generator-gulp-webapp/blob/master/app/templates/gulpfile.js#L27

: 당신이 설정의이 유형을 사용하는 방법 우리 보좌관 팀을 살펴하려는 경우

것은, 또한 useref 작업을 사용하는, 여기에 우리 꿀꺽 파일을 살펴