配置 gulp 任务以将文件移动到子文件夹

Configure gulp task to move files to subfolder

我需要从以下位置移动已编译的 jsx->js 文件:

./Scripts/lib/xyz/components(jsx 从这里开始)

./Scripts/lib/xyz/components/build(.js 应该在这里结束)

我当前的 gulpfile 是

var gulp = require('gulp');
var react = require('gulp-react');
var watch = require('gulp-watch');
var plumber = require('gulp-plumber');
var notify = require('gulp-notify');

var libPath = "./Scripts/lib";


gulp.task("default", function() {
  var errorHandler = function(err) {
    notify.onError({
      title: "Compile Error",
      message: "<%= error.fileName %> <%= error.message %>"
    })(err);
  };

  gulp.src(libPath+'/**/*.jsx')
    .pipe(plumber({errorHandler: errorHandler}))
    .pipe(watch(libPath+'/**/*.jsx',{base: libPath}))
    .pipe(react())
    .pipe(gulp.dest(libPath));
});

这个 gulpfile 有效,但它会将 js 文件复制到同一文件夹。我想将它们移动到 /build 子文件夹。我只是不知道我需要哪个插件:(

感谢您的帮助。

看看gulp-rename

像这样的东西应该可以工作:

gulp.src(libPath+'/**/*.jsx')
    .pipe(plumber({errorHandler: errorHandler}))
    .pipe(watch(libPath+'/**/*.jsx',{base: libPath}))
    .pipe(react())
    .pipe(rename(function (path) {
        path.dirname += "/build";
    }))
    .pipe(gulp.dest(libPath));