Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Não consigo utilizar o gulp series

Galera estou implementando um script no gulp para conseguir minificar os arquivos mas na hora de criar a tarefa default de copiar e minificar os arquivos eles n minificam, o que posso fazer?

const { task, parallel, series, src, dest, watch } = require('gulp')
    ,gulp = require('gulp')
    ,gulpCli = require('gulp-cli')
    // ,glob = require('glob')
    ,globStream = require('glob-stream')
    ,autoprefixer = require('gulp-autoprefixer')
    ,clean = require('gulp-clean')
    ,cleanCSS = require('gulp-clean-css')
    ,concat = require('gulp-concat')
    ,del = require('del')
    ,gulpif = require('gulp-if')
    ,htmlmin = require('gulp-htmlmin')
    ,imagemin = require('gulp-imagemin')
      ,gifsicle = require('imagemin-gifsicle')
      ,mozjpeg = require('imagemin-mozjpeg')
      ,optipng = require('imagemin-optipng')
      ,svgo = require('imagemin-svgo')
    ,pumpify = require('pumpify')
    ,removeHtmlComments = require('gulp-remove-html-comments')
    ,rev = require('gulp-rev')
    ,uglify = require('gulp-uglify-es').default
    ,usemin = require('gulp-usemin')
    ,useref = require('gulp-useref')
    ,pipeline = require('readable-stream').pipeline;


const __origem = 'src';
const __destino = '../dist';

const __destinoCSS = `${__destino}/**/css`; 
const __destinoJS = `${__destino}/**/js`; 
const __destinoIMG = `${__destino}/**/img`;  

//Apaga pasta 'dist'
async function clear(){
    return (del(__destino, {allowEmpty: true, force: true}));
  };
gulp.task('clean', clear);

// Cria cópia da pasta 'font' para a pasta 'dist' 
async function copy(){
    return src([`${__origem}/**/**/*`, `!${__origem}/**/**/scss/*.scss`])
    .pipe(dest('../dist'));
    };  
gulp.task('copy', copy);

//Minificação
async function useminAll(){
  src(`${__destino}/*.html`)
  .pipe(usemin({
    css : [autoprefixer, cleanCSS],
    html: [ htmlmin({ collapseWhitespace: true }) ],
    js : [uglify]
  }))
  .pipe(removeHtmlComments())
  .pipe(dest(__destino));
  //{ force: true } para apagar pastas com diretório fora do arquivo gulpfile.js
  const jsPath =  src([`${__destinoJS}/*.js`, `!${__destinoJS}/*min.js`]) 
  .pipe(clean({force: true}));
  const cssPath = src([`${__destinoCSS}/*.css`,`!${__destinoCSS}/*min.css`])
  .pipe(clean({force: true}));
  //Excluir pasta SCSS, allowEmpty pois ela está vazia 
  const scssPath = src(`${__destino}/assets/scss`, {allowEmpty: true})
  .pipe(clean({force: true}));
  return (jsPath,cssPath,scssPath);
};
gulp.task('usemin', useminAll);

exports.default = series('clean', 'copy', 'usemin');

Se eu executar o gulp usemin ele funciona normalmente, mas não funciona com o default

4 respostas
solução!

Fala ai André, tudo bem? Acho que a função useminAll não precisa ser async, tente remover e fazer o teste novamente.

Espero ter ajudado.

Eu ja cheguei pra falar que tinha resolvido. Era exatamente isso chefe! KKKKKK Acabei de concertar e deu certo :D

Boa André, sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.

Pode deixar chefe! Valeu demais :D