2016-12-14 4 views
0

私は2つのタスク'compileApp''compileAppDeploy'を作成しました。基本的には、これらは似ていますcompileAppDeploy配備するコードを縮小しました。 compileAppDeployDISTフォルダgulp srcフォルダからすべてのファイルを除外しない

失敗私が試したいくつかの経路の組合せから最初compileApp連結縮小さコードを実行している場合が

は、独立して、両方のタスクは、よく実行されます。私がパスの下に設定した場合、javaScriptMinified.jsが削除されますが、htmlAngularMinified.jsが連結されます。

'!./app/dist/*.js 

ディレクトリ構造

+root 
     +app 
     +dist -> Exclude 
      -javaScriptMinified.js -> after run compileAppDeploy task 
      -htmlAngularMinified.js -> after run compileAppDeploy task 
     +filters -> Include 
     +l10n -> Exclude 
     +components -> Include 
     -app.js  -> Include 
     +css 
     -gulpfile.js 
     -index.html 
     -package.json 

compileApp

gulp.task('compileApp', function() { 

return gulp.src(['./app/app.js','./app/**/*.js','!./app/dist/']) 
    .pipe(plumber({errorHandler : onError})) 
    .pipe(concat('LoginPortal.min.js')) 
    .pipe(gulp.dest('./app/')); 

}); 

compileAppDeploy

gulp.task('compileAppDeploy', function(version) { 

return gulp.src(['./app/app.js','./app/**/*.js','!./app/dist/']) 
    .pipe(plumber({errorHandler : onError})) 
    .pipe(stripDebug()) 
    .pipe(uglify({ 
     warnings : false 
    })) 
    .pipe(replace('app/l10n' ,'' + version + '/l10n')) 
    .pipe(concat('LoginPortal' + version + '.min.js')) 
    .pipe(gulp.dest('./app/dist/' + version + '/')); 
}); 

答えて

0

私はいくつかのパスの組み合わせを試してみましたが失敗しました。私がパスの下に設定した場合、javaScriptMinified.jsが削除されますが、htmlAngularMinified.jsが連結されます。

'!./app/dist/*.js 

あなただけ./app/dist/ではなく、サブディレクトリに直接ファイルを除外します。これはおそらくhtmlAngularMinified.jsがサブディレクトリにあり、javaScriptMinified.jsはそうでないことを意味します。

あなたはすべてのディレクトリレベルから.jsファイルを除外する必要があります。!./app/dist/**/*.js

あなただけの適切なディレクトリ構造を使用した場合は、そのいずれかを心配する必要はないでしょう。ディストリビューションディレクトリをソースディレクトリの中に置くことはひどい考えです。代わりに、このような構造の:

+root 
    +app 
     +dist 

次の構造を使用します。

+root 
    +app 
    +dist 

は、その後、あなたのcompileAppDeployであなただけのこれを行うことができます。

.pipe(gulp.dest('./dist/' + version + '/')); 

をそして、あなたは心配する必要はありませんdistディレクトリを除きます。これは、./app以下になっていないためです。

関連する問題