gulp uncss неожиданно удаляет некоторые "игнорируемые" классы

Я использую gulp uncss. Это мой код задачи:

gulp.task('uncss', () => {
  return gulp.src($uncss.src)
    .pipe(uncss({
        html: JSON.parse(require('fs').readFileSync('./sitemap.json', 'utf-8')),
        ignore: [/\.no-\w+/g, /\.is-\w+/g, /\.plyr\w+/g, /\.lazy\w+/g, /\.\w+\s?\.is-\w+/g]
    }))
    // .pipe(cssnano())
    .on('error', handleErrors)
    .pipe(gulp.dest($uncss.dest))
});

Следующая строка

.is-menu-open .menu__btn span:before, .is-menu-open .menu__btn span:after {
  background-color: #000;
}

компилируется как, как только я запустил код через задачу Gulp выше.

.is-menu-open .menu__btn span:before {
  background-color: #000;
}

Любые мысли, мои навыки регулярных выражений - то, чего не хватает!

По сути, мне нужно игнорировать любые классы с .is- где-нибудь в селекторе.

1 ответ

Согласно документации:

Регулярные выражения для параметров ignore и ignoreSheets должны быть заключены в кавычки.

{"ignore": [ ".unused", "/^#js/" ]}

Другие вопросы по тегам