2017-10-18 12 views
0

プロジェクトの簡略化された構造looks like thises6ディレクトリにあるJavaScriptファイルは、近隣のディレクトリjsに移動する必要があります。。ディレクトリ内のファイルを移動する

var gulp = require('gulp'); 
var babel = require('gulp-babel'); 

gulp.task('build-js', function() { 
    gulp.src('app/core/**/es6/**/*.js') 
    .pipe(babel({ 
     presets: ["env"] 
    })) 
    .pipe(gulp.dest(???)); // need move to ../js 
}); 

お願いします。これをgulpに実装する方法を教えてください。

答えて

0

バベルパイプは、es6フォルダにあるjsファイルを移動したり、フォルダを追加したりしないものとします。 gulpfile.jsは "app"フォルダのルートレベルにあります。

var gulp = require('gulp'); 
var path = require('path'); 
var rename = require('gulp-rename'); 

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

    // with gulpfile.js at root of "app" folder 
    return gulp.src('core/**/es6/*.js') 

    .pipe(rename(function (file) { 

     console.log("file.dirname = " + file.dirname); 
     // file.dirname = AdminTools\es6 
     // file.dirname = Permissions\es6 

     // strip off the last folder 'es6' 
     var temp = file.dirname.split(path.sep)[0]; 

     file.dirname = temp + "/js"; 
     // file.dirname = AdminTools\js 
     // file.dirname = Permissions\js 
    })) 

    .pipe(gulp.dest('core')); 
}); 
+0

ありがとうございます、私の問題を解決するのを手伝ってくれました。私は 'var temp = file.dirname.split(path.sep)[0]; file.dirname = file.dirname.replace(/ es6/g、 'js'); 'ファイルのjavascriptの前のディレクトリの数が異なる可能性があるため、file.dirname = temp +"/js "; – mrOrlando

関連する問題