Javascript 使用多个独立的gulpfile构建不同的bundle
这是场景 假设我有一个主应用程序,里面有不同的子应用程序(或者在symfony world中有捆绑包)。每个应用程序都有自己的脚本和样式,彼此独立。这些子应用程序应该尽可能少地耦合,因为它们越来越多,或者可以随时删除 应用程序目录Javascript 使用多个独立的gulpfile构建不同的bundle,javascript,symfony,bundle,gulp,Javascript,Symfony,Bundle,Gulp,这是场景 假设我有一个主应用程序,里面有不同的子应用程序(或者在symfony world中有捆绑包)。每个应用程序都有自己的脚本和样式,彼此独立。这些子应用程序应该尽可能少地耦合,因为它们越来越多,或者可以随时删除 应用程序目录 样式(主应用程序) 脚本(主应用程序) 子应用程序 附件1 风格 剧本 gulpfile.js 附件2 风格 剧本 gulpfile.js 距离(目标) maincss.css(mainapp) mainjs.js(mainapp) 子应用1 sty
- 样式(主应用程序)
- 脚本(主应用程序)
- 子应用程序
- 附件1
- 风格
- 剧本
- gulpfile.js
- 附件2
- 风格
- 剧本
- gulpfile.js
- 附件1
- 距离(目标)
- maincss.css(mainapp)
- mainjs.js(mainapp)
- 子应用1
- style.css(app1样式)
- script.js(app1js)
- gulpfiles.js
thx您可以尝试类似的方法,或者至少它会为您指明正确的方向: main gulpfile.js 您的吞咽文件夹如下所示
- 吞咽
- 任务
- task1.js
- task2.js
- index.js
- 任务
通过这种方式,您可以为每个AppDownVote将您的任务分为不同的文件夹,因为您没有向我们展示您尝试的内容以及您不满意的原因。如果您可以编辑,是否将upvote即使我尝试回答您的问题,我也同意@Apolo。当您展示您自己尝试解决问题的示例时,问题会得到更好的回答问题
require('./gulp');
require('./app1/gulp');
require('./app2/gulp');
var fs = require('fs');
var path = require('path');
var onlyScripts = function(name) {
return /(\.(js)$)/i.test(path.extname(name));
};
var tasks = fs.readdirSync('./gulp/tasks/').filter(onlyScripts);
tasks.forEach(function(task) {
require('./tasks/' + task);
});
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync');
var autoprefixer = require('gulp-autoprefixer');
gulp.task('styles', function () {
return gulp.src([src-of-this-app])
.pipe(sass({
sourceComments: 'map',
sourceMap: 'sass',
outputStyle: 'nested'
}))
.pipe(autoprefixer("last 2 versions", "> 1%", "ie 8"))
.pipe(gulp.dest([dest-of-this-app]))
.pipe(gulpif(browserSync.active, browserSync.reload({ stream: true })));
});