私は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;
}
は、としてコンパイルされます。
.is-menu-open .menu__btn span:before {
background-color: #000;
}
私の正規表現のスキルには欠けているものがいくつかあります。
本来、セレクタ内の任意の場所にある.is-
のクラスを無視する必要があります。 documentationによると
私はuncss'は '/ \として、regexsのグローバルフラグをキャッチされていない'感じています。IS- \ +/G' wのことをキャッチする必要があります。 '.is-menu-open'クラス全体を指定するのは動作しますか?また、(あなたのCSS上で)無視するインラインであなたのために働くでしょうか? '/ * uncss:ignore * /' – HNeiva
私はhttps://regex101.com/の式をテストしていましたが、期待どおりに一致していました。私は '/ * uncss:ignore * /'について知りませんでしたが、それは渦を与えるでしょう。ありがとう – magicspon