[英]Gulp watch doesn't do anything
我正在尝试使用 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);
在控制台中,它说代码正在运行并且没有任何问题,但是当我更改任何文件时,它不会编译它。
据我所知,没有 gulp.tasks ... 在示例中
gulp.task('watch', function() {
gulp.watch('public/assets/css/*.css', gulp.series('clean-css', 'pack-css'));
});
同样在您提供的文件中,只有导出,并且您没有调用“watchArchivos”。
有一个类似的问题,观察任务从未被执行,在这种情况下(浏览器)的第一个任务是浏览器同步实例,在我的情况下浏览器任务是异步的,所以我不得不使用 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,
},
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.