【问题标题】:Gulp tasks throw an error on Win 10Gulp 任务在 Win 10 上引发错误
【发布时间】:2018-07-09 12:23:17
【问题描述】:

我有 Windows 10 Pro, 从这里做练习https://vk.com/video-160048630_456239048?list=b31c949319120bc599

已经安装了 gulp、gulp-less、gulp-notify、gulp-plumber。

我创建了将 .less 文件转换为 .css 的 gulp 任务。

当我运行我的 gulp 任务时,它会抛出一个错误:

$ gulp default

$ gulp 'default'
assert.js:42
  throw new errors.AssertionError({
  ^

AssertionError [ERR_ASSERTION]: Task function must be specified
    at Gulp.set [as _setTask] (C:\Users\Anatoly\Desktop\project\node_modules\undertaker\lib\set-task.js:10:3)
    at Gulp.task (C:\Users\Anatoly\Desktop\project\node_modules\undertaker\lib\task.js:13:8)
    at Object.<anonymous> (C:\Users\Anatoly\Desktop\project\gulpfile.js:8:6)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)

我的 gulpfile.js:

var gulp = require('gulp'),

    browserSync = require('browser-sync'),
    less        = require('gulp-less'),
    notify      = require('gulp-notify'),
    plumber     = require('gulp-plumber');

gulp.task('server',['less'],function(){

    browserSync.init({

        server: {baseDir: './app/'}
    });

    gulp.watch('app/**/*.html').on('change',browserSync.reload);
    gulp.watch('app/less/**/*.less',['less']);
});

gulp.task('less',function(){

    return gulp.src('./app/less/main.less')
        .pipe(plumber({
            errorHandler: notify.onError(function(err){
                return {
                    title: 'less',
                    sound: false,
                    message: err.message
                }               
            })      
        }))
    .pipe(less())
    .pipe(gulp.dest('./app/css'))
    .pipe(browserSync.stream());
});

gulp.task('default',['server']);

【问题讨论】:

  • 我尝试在本地卸载 gulp 并安装特定版本的 gulp,小于 4.0.0

标签: gulp gulp-watch


【解决方案1】:

在我用一个less版本重新安装gulp后问题就消失了:

npm uninstall gulp -- 删除 gulp npm i gulp --save-dev --安装本地版本 3.9.1

运行 gulp 任务:

gulp server

有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 2021-04-21
    相关资源
    最近更新 更多