2016-04-29 44 views
0

當運行我的生成任務,useref沒有做什麼,我希望:在我的索引一飲而盡useref工作涼亭的部件,而不是我的應用程序文件(CSS和JS)

我:

<!-- build:css /assets/styles/lib.css --> 
<!-- bower:css --> 
    <link rel="stylesheet" href="/bower_components/bootstrap/dist/css/bootstrap.css" /> 
<!-- endbower --> 
<!-- endbuild --> 

<!-- build:css /assets/styles/main.css --> 
<!-- inject:css --> 
    <link rel="stylesheet" href="assets/styles/main.css"> 
<!-- endinject --> 
<!-- endbuild --> 

<!-- build:js /lib.js --> 
<!-- bower:js --> 
    <script src="/bower_components/jquery/dist/jquery.js"></script> 
    <script src="/bower_components/angular/angular.js"></script> 
<!-- endbower --> 
<!-- endbuild --> 

<!-- build:js ./project.js --> 
<!-- inject:js --> 
    <script src="app.js"></script> 
<!-- endinject --> 
<!-- endbuild --> 

所以我gruntfile我有一個任務:

gulp.task('build-optimise', function() { 
    log('Optimising project'); 
    return gulp.src(config.app + 'index.html') 
     .pipe($.useref({searchPath: ['./bower_components', config.app]})) 
     .pipe($.print()) 
     .pipe($.if('*.js', $.uglify({ 
      mangle: false 
     }))) 
     .pipe($.if('*.css', $.minifyCss())) 
     .pipe(gulp.dest(config.dist)); 
}); // config.app = ./local which contains my local build 

運行我的任務時,它使一個lib.js文件和資產/風格/ lib.css文件,但沒有project.js並沒有資產/styles/main.css

我該如何解決這個問題?我的js文件是用打字稿編寫的,已經被刪除併成功創建,css來自sass,我很確定他們沒有任何錯誤,所以它一定是別的...

回答

0

我是在做類似的事情在我的項目

我一口任務適合你的情況是這樣的

gulp.task('build-optimise', function() { 
    log('Optimising project'); 
    return gulp.src(config.app + 'index.html') 
     .pipe($.useref()) 
     .pipe($.if('*.js', $.uglify())) 
     .pipe($.if('*.css', $.minifyCss())) 
     .pipe(gulp.dest(config.dis)); 
}); 

希望這有助於