Gulp 大口手表什么都不做

uttx8gqw  于 2022-12-08  发布在  Gulp
关注(0)|答案(2)|浏览(178)

我尝试使用Watch来编译我的SASS文件,但它不起作用。

包.json

"author": "José Ramón Rico Lara",
  "license": "ISC",
  "devDependencies": {
    "gulp": "^4.0.2",
    "gulp-concat": "^2.6.1",
    "gulp-imagemin": "^7.1.0",
    "gulp-notify": "^3.2.0",
    "gulp-sass": "^4.1.0",
    "gulp-webp": "^4.0.1"
  }
}

Gulpfile.js

const { series, src, watch, dest, parallel } = require('gulp');
const sass = require('gulp-sass')
const webp = require('gulp-webp');

const paths = {
    scss: 'src/scss/**/*.scss',
    js: 'src/js/**/*.js'
}

function css() {
    return src(paths.scss)
        .pipe(sass())
        .pipe(dest('./build/css'))
}

function javascript() {
    return src(paths.js)
        .pipe(concat('bundle.js'))
        .pipe(dest('./build/js'))
}

function watchArchivos() {
    watch(paths.scss, css); // * = La carpeta actual - ** = Todos los archivos con esa extensión
    watch(paths.js, javascript);
}

exports.css = css;
exports.javascript = javascript;
exports.watchArchivos = watchArchivos;

exports.default = series(css, javascript, watchArchivos);

在控制台中,它说,代码正在运行,没有任何问题,但当我改变任何文件,它不编译它。

sc4hvdpw

sc4hvdpw1#

据我所知,在这个例子中没有吞咽任务

gulp.task('watch', function() {
  gulp.watch('public/assets/css/*.css', gulp.series('clean-css', 'pack-css'));
});

另外,在您提供的文件中,只有导出,并且您没有调用“watchArchivos”。

vlurs2pr

vlurs2pr2#

有一个类似的问题,监视任务从来没有得到执行,第一个任务在这种情况下(浏览器)是一个浏览器同步示例,在我的情况下,浏览器任务是异步的,所以我不得不使用asyn / await,一切工作正常。

function browser() {
  browserSync.init({
    server: {
      baseDir: PATHS.output,
    },
  });
}
exports.default = series (browser, watching);

结束日期

async function browser() {
  await browserSync.init({
    server: {
      baseDir: PATHS.output,
    },
  });
}

相关问题