gulp如何在多个文件夹中分别合并同一文件夹里的css文件?

发布于 2021-11-29 17:11:10 字数 438 浏览 901 评论 6

第一张图中实现了将src目录下的scss文件逐一编译并压缩到dist目录下,但离我想要的效果还有一些差距,我希望能够编译压缩的同时,将这三个css文件合并到一起去。而图二中加入了.pipe(concat('main.css'))语句,却发现它是将src目录下所有的scss文件编译压缩并合并到一起去了,不是只合并common下的,不免让人有些苦恼~~刚接触gulp没多久,弄了好久弄不出个所以然,还望大神们赐教~~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

南冥有猫 2021-11-30 15:12:11

回复
如果你想要分组合并的话,我能想到的就是分开 gulp.src 了 _(:з」∠)_

巡山小妖精 2021-11-30 15:11:49

回复
gulp.watch("web/mobile/src/**/*.*", function(event {theSrc=event.path.substring(event.path.indexOf("web"),event.path.lastIndexOf("\")+1); theDst = theSrc.replace("src", "dist"); });

后知后觉 2021-11-30 15:08:15

回复
问题已经解决了,大概思路是获取改动的文件的所在路径,然后截取其上层文件夹的相对路径进行传参,代码如上~ 再次对你的回答表示谢意,祝生活愉快。

风透绣罗衣 2021-11-30 15:07:49

回复
推荐用 node 的 path <https://nodejs.org/api/path.html> 模块处理路径,方便且可靠

爱的故事 2021-11-30 15:04:59

回复
懒一点可以就写一个 compile 的任务,然后用 gulp-newer <https://www.npmjs.com/package/gulp-newer> 这样的工具来过滤不需要重新编译的 SCSS

卸妝后依然美 2021-11-30 14:07:41

参见一下 glob 的规则,更详细地限制一下你传进 gulp.src() 的参数就可以了。

可以从这里查看: https://github.com/isaacs/minimatch#usage

一般建议不同用途的进行统一处理的文件/目录之类的都完全写成常量,不在 gulp.src() 里面进行字符串拼接,task 多了很容易混乱:)

另外 gulp.src() 是支持接收一个数组作为参数的,你可以这么用

gulp.src(['fileA', 'fileB', ...])

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文