我想在gulp任务正在运行或已经运行时登录到stdout(配置环境).

比如:

gulp.task('scripts', function () {
  var enviroment = argv.env || 'development';
  var config = gulp.src('config/' + enviroment + '.json')
      .pipe(ngConstant({name: 'app.config'}));
  var scripts = gulp.src('js/*');

  return es.merge(config, scripts)
    .pipe(concat('app.js'))
    .pipe(gulp.dest('app/dist'))
    .on('success', function() { 
      console.log('Configured environment: ' + environment);
    });
});

我不确定我应该回应什么事件,也不确定在哪里可以找到这些事件的列表.有什么建议吗?非常感谢.

推荐答案

(In December 2017, the 101 module, which provided logging, 100. The Gulp team recommended that developers replace this functionality with the 102 module. This answer has been updated to reflect that.)

fancy-log提供日志(log)记录,最初由Gulp团队建造.

var log = require('fancy-log');
log('Hello world!');

要添加日志(log)记录,Gulp's API documentation告诉我们.src返回:

返回可以通过管道传输到插件的乙烯基文件流.

node .js的Stream文档提供了一个事件列表.综合起来,这里有一个例子:

gulp.task('default', function() {
    return gulp.src('main.scss')
        .pipe(sass({ style: 'expanded' }))
        .on('end', function(){ log('Almost there...'); })
        .pipe(minifycss())
        .pipe(gulp.dest('.'))
        .on('end', function(){ log('Done!'); });
});

注意:end事件可能会在插件完成之前调用(并且已经发送了它自己的所有输出),因为该事件是在"所有数据都已刷新到基础系统"时调用的.

Node.js相关问答推荐

使用NodeJS输出检索Base64图像的网络报废

关于Node.js中的AES加密库的问题

如何修复PostgreSQL和NodeJS/NestJS应用程序之间的日期时间和时区问题?

当API返回400状态代码时,使用Reactjs fetch获取错误消息

try 使用 pdf.js 时 pdf.getPage 不是函数

在全局对象上声明的函数

express app.post的多个参数在Node.js中的定义是什么

MongoDB - 查找查询以判断是否存在少量字段,结合字段上的 AND

Jest - SyntaxError: 不能在@nestjs/axios 的模块外使用 import 语句

只要我在后端正确验证所有内容,就可以将这些数据存储在本地存储中吗?

MERN 堆栈项目中的 React [create-react-app] 正在提供依赖项

AJAX 和 Node JS:在我的服务器中接收空数据

Azure Function 在 2022 年 4 月 26 日禁用将用户字段设置为 HTTP 请求对象

如何在 mongoDB 中用值 0 填充缺失的文档?

与 NPM 一起安装时找不到 Express 模块

所有的javascript回调都是异步的吗?如果不是,我怎么知道哪些是?

使用 Webpack 和 font-face 加载字体

node 应用程序是否有任何独立的 gui 模块

从 React(同构应用程序)进行 API 调用时出现Access-Control-Allow-Origin问题

为什么 Node.js 被命名为 Node.js?