Gulp JS 任务从未定义默认

Gulp JS task never defined default

我正在这里做一个 GuLP JS 项目。

在我的 gulpfile.js 里面:

const gulp = require("gulp");
const sass = require("gulp-sass");
const browserSync = require("browser-sync").create();

function compile() {
  return gulp
    .src("app/scss/*.scss")
    .pipe(sass())
    .pipe(gulp.dest("app/css"))
    .pipe(browserSync.stream());
}

// Watch for changes
function watch() {
  browserSync.init({
    server: "./app/",
    index: "./index.html",
  });

  gulp.watch("app/scss/*.scss", style);
  gulp.watch("./*.html").on("change", browserSync.reload);
  gulp.watch("./js/*.js").on("change", browserSync.reload);
}

exports.compile = compile;
exports.watch = watch;

当我 运行 gulp 在我的终端上 returns 一个 Task never defined Default 错误。

知道我在这里遗漏了什么吗?我该如何解决这个问题?

您需要导出默认值 (exports.default = FUNCTION) 并将其指向所需的默认函数 (compile/watch),或者您需要 运行 您的 gulp 如 gulp compile/gulp watch.

const gulp = require("gulp");
const sass = require("gulp-sass");
const browserSync = require("browser-sync").create();

function compile() {
  return gulp
    .src("app/scss/*.scss")
    .pipe(sass())
    .pipe(gulp.dest("app/css"))
    .pipe(browserSync.stream());
}

// Watch for changes
function watch() {
  browserSync.init({
    server: "./app/",
    index: "./index.html",
  });

  gulp.watch("app/scss/*.scss", style);
  gulp.watch("./*.html").on("change", browserSync.reload);
  gulp.watch("./js/*.js").on("change", browserSync.reload);
}

exports.compile = compile;
exports.watch = watch;
exports.default = compile;