Как создать сжатые и распакованные файлы. js, используя webpack / gulp / babel / terser? - PullRequest
0 голосов
/ 17 февраля 2020

Создавая тему WordPress с использованием базовых сайтов ZURB, я пытаюсь изменить gulpfile.babel. js для вывода миниатюрных и несжатых. js в рамках одного и того же процесса веб-упаковки. Я использую terser для процесса минимизации.

Вот моя текущая конфигурация:

let webpackConfig = {
  mode: (PRODUCTION ? 'production' : 'development'),
  module: {
    rules: [
      {
        test: /\.js$/,
        use: {
          loader: 'babel-loader',
          options: {
            presets: [ "@babel/preset-env" ],
            compact: false
          }
        }
      }
    ]
  },
  devtool: !PRODUCTION && 'source-map'
}

// Combine JavaScript into one file
// In production, the file is minified
function javascript() {
  return gulp.src(PATHS.entries)
    .pipe(named())
    .pipe($.sourcemaps.init())
    .pipe(webpackStream(webpackConfig, webpack2))
    .pipe($.if(PRODUCTION, $.terser()
      .on('error', e => { console.log(e); })
    ))
    .pipe($.if(!PRODUCTION, $.sourcemaps.write()))
    .pipe(gulp.dest(PATHS.dist + '/assets/js'))
    .pipe(gulp.dest(PATHS.dist + '/assets/uncompressed/js'));
}

Есть идеи, как создать несжатую версию в / assests / uncompressed / js (см. Последнюю строку)?

...