Gulp - 如果 CSS 大小大于 50 kb,则 gulp 进程失败

Gulp - Fail gulp process if the CSS size is bigger than 50 kb

在我的项目中,我有 SASS 个文件,这些文件在部署前由 Gulp 转换为 CSS 个文件。我想做的是在部署前检查每个已编译的 CSS 文件的大小,如果任何文件大于 50kb,则进程失败。

我做了什么?

我设法输出了每个文件的大小,但如果文件超过 50kb,我无法使 Gulp 过程失败。你可以在下面看到我的 Gulp 任务:

gulp.task('check-CSS-size', () => {
    const s = size({showFiles: true, pretty: true});

    return gulp.src('stylesheets/**/*.css')
        .pipe(s)
        .pipe(gulpIf('if s size is bigger than 50kb ', gulpFail(`${s} is bigger than 50kb`)));
});

谢谢!

PS:我是 Gulp 的新手。

我认为这个包不允许这样做,它只有 return 个文件的总大小,进行快速搜索似乎不存在一个包可以做你想做的事。

所以我认为最好的办法是自己检查包代码或分叉它!

看起来你已经准备好了所有正确的部分。只需要替换你的伪代码语句

'if s size is bigger than 50kb'

用真实的javascript表达

(s > 50000)

gulp-size 包有一个 prettySize 参数,默认设置为 true。为了使您的表达式起作用,您可能需要将该参数设置为 false 以获得要比较的干净数字。