gulp uncss - 通过正则表达式忽略将不起作用
gulp uncss - ignore via regex won´t work
我正在尝试为我的 gulp 工作流程添加 uncss。
要忽略一些通过 javascript 添加的 classes,例如,我用 "ignore" 声明这些 classes(在我的例子中,我是试图从 jquery 插件 magnific-popup 中取消 css css。
我的工作流程看起来像这样并使用正则表达式匹配所有 magnific-popup css:
gulp.task("uncsstask", () => {
gulp.src('original-mfp.css')
.pipe(uncss({
html:
[
'page.html',
],
ignore: [
/\.mfp-*.*/g,
]
}))
.pipe(gulp.dest('new'));
});
发生的事情是 class
.mfp-container
进入新的 css 文件,但是 class
.mfp-content
没有。
我用各种正则表达式检查器检查了正则表达式语句。
将 'm' 标志添加到您的正则表达式(否则它会在第一次匹配后停止):
/\.mfp-*.*/gm,
为什么第一个 * 在那里? “.mfp”后是否有时有 0 个或多个破折号?
[编辑] :因此,在更仔细地查看文档后,似乎不需要正则表达式标志,并且 OP 表示已解决问题,并结合了我的其他建议,即正则表达式中有一个不必要的 *。我已经编辑了我的答案,因此这些信息现在位于答案的正文中,而不仅仅是评论中。所以使用:
/\.mfp-.*/
我正在尝试为我的 gulp 工作流程添加 uncss。
要忽略一些通过 javascript 添加的 classes,例如,我用 "ignore" 声明这些 classes(在我的例子中,我是试图从 jquery 插件 magnific-popup 中取消 css css。
我的工作流程看起来像这样并使用正则表达式匹配所有 magnific-popup css:
gulp.task("uncsstask", () => {
gulp.src('original-mfp.css')
.pipe(uncss({
html:
[
'page.html',
],
ignore: [
/\.mfp-*.*/g,
]
}))
.pipe(gulp.dest('new'));
});
发生的事情是 class
.mfp-container
进入新的 css 文件,但是 class
.mfp-content
没有。
我用各种正则表达式检查器检查了正则表达式语句。
将 'm' 标志添加到您的正则表达式(否则它会在第一次匹配后停止):
/\.mfp-*.*/gm,
为什么第一个 * 在那里? “.mfp”后是否有时有 0 个或多个破折号?
[编辑] :因此,在更仔细地查看文档后,似乎不需要正则表达式标志,并且 OP 表示已解决问题,并结合了我的其他建议,即正则表达式中有一个不必要的 *。我已经编辑了我的答案,因此这些信息现在位于答案的正文中,而不仅仅是评论中。所以使用:
/\.mfp-.*/