我有一个文件夹结构,我将所有资产都与此类似。
-page1
-page1.html
-stylesheets
-page1
-page1style.css
-page2
page2.html
stylesheets
page2
page1style.css
我意识到这不是最好的文件夹结构,但是在我预测到问题之前我会选择这种方式。在我的.html文件中,我引用了类似/stylesheets/name-of-page/foo.css
的样式表。现在我在编写gulp脚本时遇到问题,因为所有缩小的文件都放在指定的目标文件夹中,但具有以下结构。
-build
-page1
-stylesheets
-page1.css
当我想要这样的东西时
-build
-page1
-page.css
TL; DR或者如果我的问题是逻辑被扰乱:我希望在运行时看到文件的src路径,然后执行一些字符串操作来计算其目的地。
答案 0 :(得分:1)
What you're looking for is gulp-rename
:
var gulp = require('gulp');
var rename = require('gulp-rename');
gulp.task('default', function() {
gulp.src('src/**/*')
.pipe(rename(function(file) {
if (file.extname === '.css') {
file.dirname = //change directory to something else
file.basename = //change file name (without extension) to something else
}
}));
});
I also suggest you look into the path
module instead of direct string manipulation to adjust the paths of your files.