【发布时间】:2018-12-07 22:35:53
【问题描述】:
如何将我的styles 任务、browser-sync 和我的watch 任务合并为一个gulp 默认命令?
这是我目前所拥有的。
var gulp = require("gulp");
var sass = require("gulp-sass");
var browserSync = require("browser-sync").create();
gulp.task("styles", function() {
gulp
.src("sass/**/*.scss")
.pipe(sass().on("error", sass.logError))
.pipe(gulp.dest("./css/"));
});
// Static server
gulp.task("browser-sync", function() {
browserSync.init({
server: {
baseDir: "./"
}
});
});
//Watch task
gulp.task("default", function() {
gulp.watch("sass/**/*.scss", gulp.series("styles"));
});
我也从浏览器同步文档中尝试过这个,但它给了我错误AssertionError [ERR_ASSERTION]: Task function must be specified
在顶部使用相同的变量。
gulp.task("serve", ["sass"], function() {
browserSync.init({
server: "./"
});
gulp.watch("/sass/*.scss", ["sass"]);
gulp.watch("/*.html").on("change", browserSync.reload);
});
// Compile sass into CSS & auto-inject into browsers
gulp.task("sass", function() {
return gulp
.src("/scss/*.scss")
.pipe(sass())
.pipe(gulp.dest("/css"))
.pipe(browserSync.stream());
});
gulp.task("default", ["serve"]);
【问题讨论】: