javascript - Gulp - 基本 concat/minify 不输出文件

标签 javascript gulp

我的代码:

var gulp = require('gulp'),
    concat = require('gulp-concat'),
    minify = require('gulp-minify-css');

gulp.task('css', function() {
    var styles = [
        'node_modules/sweetalert/dist/sweetalert.css'
    ];

    return
        gulp.src(styles)
        .pipe(minify())
        .pipe(concat('libs.min.css'))
        .pipe(gulp.dest('public/assets/css'));
});

环境:

  • 源文件存在。
  • 输出目录存在且可写。
  • 输出干净,没有错误。

控制台输出:

root@bite-srv:/var/www/test# gulp css
[12:51:27] Using gulpfile /var/www/test/gulpfile.js
[12:51:27] Starting 'css'...`
[12:51:27] Finished 'css' after 582ms

这不会输出任何 css。

怎么了?

== 编辑 ==

发现问题出在这里:

// This doesn't work
return 
    gulp.src(styles)
    .pipe(minify())
    .pipe(concat('libs.min.css'))
    .pipe(gulp.dest('public/assets/css'));

// This works
return gulp.src(styles)
    .pipe(minify())
    .pipe(concat('libs.min.css'))
    .pipe(gulp.dest('public/assets/css'));

谁能解释一下为什么?

最佳答案

JavaScript 执行自动分号插入。所以这个:

return 
    gulp.src(styles)
    .pipe(minify())
    .pipe(concat('libs.min.css'))
    .pipe(gulp.dest('public/assets/css'));

转化成这样:

return; // <- Execution halts here!

gulp.src(styles)
    .pipe(minify())
    .pipe(concat('libs.min.css'))
    .pipe(gulp.dest('public/assets/css'));

有关详细信息,请参阅 Beware Of JavaScript Semicolon Insertion .

关于javascript - Gulp - 基本 concat/minify 不输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44823175/

相关文章:

javascript - 如何使用 WebExtensions 存储 API 恢复复选框的状态

javascript - TinyMCE gulp 配置

javascript - Gulp BrowserSync 不刷新

javascript - 无法在 GULP 中按特定顺序执行任务

javascript - Nodejs模块文件和concat

javascript - jQuery 停止调用其他处理程序

javascript - 如何在magento中进行图像类型验证?

javascript - 获取相对屏幕位置

javascript - 自动生成的图像不可点击

javascript - Gulp 任务依赖