仅在源文件更改时才使用Gulp捆绑包

时间:2015-05-14 22:01:24

标签: gulp

我很擅长吞咽,所以希望这很容易。

我正在尝试创建一些捆绑包,每个捆绑包都由一堆js ​​/ css文件(源自文件)组成,但我只想构建每个捆绑包,如果它的任何源文件发生了变化

我的开始代码如下所示。我需要添加什么才能使其正常工作?

gulp.task('bundle', function () {
    return gulp
        .src(sourceFile)
        .pipe(bundle())
        .pipe(gulp.dest(buildDest))
        .pipe(bundle.results({
            pathPrefix: '/bundlePath/',
            dest: manifestDest
        }));
});

的资源文件:

module.exports = {
    bundle: {
        "bundle1": {
            "scripts": [
                "file1.js",
                "file2.js",
                "file3.js"
            ],
            "styles": "style1.css"      
        },
        "bundle2": {
            "scripts": [
                "file1.js",
                "file4.js"
            ],
            "styles": [         
                "style1.css",
                "style2.css"
            ]
        }
    }
}

例如,如果只有file1.js发生变化,我想要重建bundle1和bundle2,因为它们共享file1.js。如果只有file4.js更改,则只应重建bundle2。

在VS2012中构建项目的发布版本时,此过程将启动。

我研究了gulp-changed之类的替代软件包,但它们似乎只适用于单个文件(如果我错了,请纠正我)。

0 个答案:

没有答案