Задать вопрос
ae_ph
@ae_ph
I'm a owl )

Как подключить плагин html-minifier для gulp?

Я хочу подключить в gulp плагин html-minifier
Есть аналогичный плагин gulp-html-minifier или htmlnano но гораздо лучше получать новые обновления напрямую.

Возможно как-то может помочь этот плагин но я пока не разобрался так-ли это... vinyl-source-stream

Этот код не работает с использованием htmlMinify.
Возвращаемое значение не является функцией говорит он мне указывая на разные строки в этом плагине.
const htmlMinify = require('html-minifier').minify

function html() {
    const options = {
        includeAutoGeneratedTags: true,
        removeAttributeQuotes: true,
        removeComments: true,
        removeRedundantAttributes: true,
        removeScriptTypeAttributes: true,
        removeStyleLinkTypeAttributes: true,
        sortClassName: true,
        useShortDoctype: true
    }
    return src(config.app.html)
        .pipe(htmlMinify(options))
    .pipe(dest(config.build.html))
}

exports.stream = series(clear, html, stream)

60c4e004b03a7025643891.png
  • Вопрос задан
  • 107 просмотров
Подписаться 1 Сложный Комментировать
Решения вопроса 1
ae_ph
@ae_ph Автор вопроса
I'm a owl )
Я написал код для работы этого плагина с gulp.
Больше нет необходимости использовать сторонние плагины.

const { src, dest, series } = require('gulp');
const htmlMinify = require('html-minifier');

const options = {
    includeAutoGeneratedTags: true,
    removeAttributeQuotes: true,
    removeComments: true,
    removeRedundantAttributes: true,
    removeScriptTypeAttributes: true,
    removeStyleLinkTypeAttributes: true,
    sortClassName: true,
    useShortDoctype: true,
    collapseWhitespace: true
};

function gHtmlMinify() {
    return src('app/**/*.html')
        .on('data', function(file) {
            const buferFile = Buffer.from(htmlMinify.minify(file.contents.toString(), options))
            file.contents = buferFile;
            console.log(file);
            return;
        })
        .pipe(dest('build'))
}
exports.gHtmlMinify = series(gHtmlMinify);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alekcena
Нелинейный наставник
Тк как никто не помог, наводка*

Плагины для GULP не зря же ставят что они именно для gulp.

src, pipe - они могут работать только с данными преобразованными специальным образом.
Сделайте консоль команды src - вот это то что используют другие команды/плагины

Если в крации то просто так это сделать не получиться.(Это очень много работы).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы