node.js - gulp 默认值,任务从未定义 : default, 请检查文档以了解正确的 gulpfile 格式

标签 node.js npm gulp

我在一台新机器上检查了我的项目,并得到了不满意的控制台输出。

控制台输出
吞下默认
使用 gulpfile ...\gulpfile.js
任务从未定义:默认
请检查文档以了解正确的 gulpfile 格式

gulp -v
CLI 版本 1.2.2
本地版本4.0.0-alpha.2

设置
Node 解释器:nodejs-6.9.2\node.exe
Gulp包:node_modules\gulp-4.0.build

Gulp 文件内容

'use strict';
var gulp = require('gulp');
var del = require('del');
var path = require('path');
var sass = require('gulp-sass');
var ts = require('gulp-typescript');
var gulpPromise = require("gulp-promise");
var gulpPromiseAll = require('gulp-all');
var merge = require('merge-stream');
var through = require('through2');
var runSequence = require('run-sequence');
var async = require("async");
var Rx = require('rx');
var chok = require('chokidar');
var deleteEmpty = require('delete-empty');
var browserSync = require('browser-sync').create();
var webserver = require('gulp-webserver');
var historyApiFallback = require('connect-history-api-fallback');

/* A few functions like this */
var yadda1 = function() {
    return yadda9("yadda", yaddayadda);
};

/* A few tasks like this */
gulp.task('build', function(){
    return gulpPromiseAll(
        yadda1(),
        yadda2(),
        yadda3()
    ).then(
        function() {
            console.log("yadda");
        }, function(err) {
            console.error("yadda:", err);
        }
    );
});

gulp.task('default', gulp.series('build', 'serve', function(done) {
    console.log("Default task that cleans, builds and runs the application [END]");
    done();
}));

我做错了什么?

最佳答案

我刚刚遇到了这个问题。

我们都使用浏览器同步,与浏览器同步相关的任务是我的代码中的问题所在,因此您很有可能遇到相同的问题(也可能在您的其他 gulp 任务中) ,但不能肯定地说,因为您没有共享任务的代码。

问题:

在 gulp 3.x 中你可以编写如下代码:

gulp.task('watch', () => {
    gulp.watch('./dev/styles/**/*.scss', ['styles'];
    ...
});

在 gulp 4.x 中不能。

解决方案:

在这些情况下,您必须传递函数而不是任务名称。您可以通过传递 gulp.series() 函数来完成此操作。上面的代码就变成:

gulp.task('watch', () => {
    gulp.watch('./dev/styles/**/*.scss', gulp.series('styles'));
    ...
});

尝试在适用的情况下进行此更改。为我工作。

关于node.js - gulp 默认值,任务从未定义 : default, 请检查文档以了解正确的 gulpfile 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42368150/

相关文章:

node.js - 使用 Node.JS 创建 REST Web 服务

javascript - 如何从 javascript 为 DynamoDB 中的预配置读取容量启用自动缩放

node.js - npm 错误!文件 WindowsPowerShell\v1.0,而 Windows 7 上的 npm node-sass

node.js - fs.createWriteStream 重新启动在 PM2 上运行的应用程序

Gulp 4 watch 不工作,只运行一次

Gulp - gulp-load-plugins 不起作用

node.js - 升级到最新的mongodb

mysql - Sequelize : How to multiply column into an aggregate function

javascript - 关闭 Electron 应用程序不会停止脚本

Django 如何使用带有静态/模板的 npm 模块