1. ホーム
  2. node.js

[解決済み] gulpでファイルをコピーし、親ディレクトリに基づいて名前を変更する方法を探しています。

2023-03-05 08:34:25

質問

各モジュールには、ビルドディレクトリにコピーする必要があるいくつかのファイルがあり、これによるコードの繰り返しを最小限に抑える方法を探しています。

gulp.src('./client/src/modules/signup/index.js')
  .pipe(gulp.dest('./build/public/js/signup'));

gulp.src('./client/src/modules/admin/index.js')
  .pipe(gulp.dest('./build/public/js/admin'));

をこのようなものに変更します。

gulp.src('./client/src/modules/(.*)/index.js')
  .pipe(gulp.dest('./build/public/js/$1'));

明らかに上記は動作しないので、これを行う方法、または既にこれを行うnpmはありますか?

ありがとうございます。

どのように解決するのですか?

最も良い方法は base を構成することです。

gulp.src('./client/src/modules/**/index.js', {base: './client/src/modules'})
  .pipe(gulp.dest('./build/public/js/'));

これは gulp に相対パスを決定するための開始点としてモジュールディレクトリを 使うように指示します。

(また /**/*.js を使うこともできます...)