首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gulp/Grunt:只连接必要的JS文件?

Gulp/Grunt:只连接必要的JS文件?
EN

Stack Overflow用户
提问于 2014-10-01 21:02:17
回答 1查看 758关注 0票数 0

我得到了

我有一个生成app.min.jslibs.min.js的gulpfile文件;相当不言自明:

代码语言:javascript
复制
var dev = {
    libs: [
        'bower_components/angular/angular.min.js',
        'bower_components/angular-foundation/mm-foundation-tpls.min.js',
        'bower_components/underscore.string/dist/underscore.string.min.js'
    ]
};

var build = {
    js: 'public/js'
};

gulp.task('libs', function() {
    return gulp.src(dev.libs)
    .pipe(concat('libs.min.js'))
    .pipe(uglify({mangle: false}))
    .pipe(gulp.dest(build.js));
});

在这个设置中,每当我添加或删除一个库时,我都必须手动地将它添加到dev.libs数组中(并且顺序也是正确的),然后重新启动Gulp来查看新的lib文件。

我不想

我希望能够连接我使用的js库,而不必在(array) dev.libs中具体定义它们。目前,如果我使用return gulp.src('**/*.js'),我相信它会连接到bower_components中的每个js文件,这显然是荒谬的。

问题

是否有一种方法可以自动加载所需的和 concat ,而不必在一个吞咽文件中定义它们?E 216

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-01 21:08:34

对于Bower,您可以使用插件主弓形文件来解析bower.json的内容并搜索每个依赖项的main文件,因此不必声明每个库。

代码语言:javascript
复制
var bowerFiles = require('main-bower-files');

然后你可以:

代码语言:javascript
复制
gulp.task('libs', function () {
  return gulp.src(bowerFiles())
    .pipe(concat('libs.min.js'))
    .pipe(uglify({mangle: false}))
    .pipe(gulp.dest(build.js));
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26150602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档