首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态加载多个入口点并拆分输出

动态加载多个入口点并拆分输出
EN

Stack Overflow用户
提问于 2016-08-23 01:24:19
回答 1查看 687关注 0票数 2

我有几个不同的angular模块,我想动态地连接起来,这样每个模块都有一个不同的单一输出文件。

因此,如果在resources/assets/js/angular/modules目录中,我有:

代码语言:javascript
复制
Role   
  - controllers
      roleIndexController   
  - app.js

Descriptions
   -controllers
      descriptionIndexController
   -app.js

我希望这个文件最终是两个文件:

代码语言:javascript
复制
RoleModule.js
DescriptionsModule.js

我不希望每次添加新模块时都必须显式地将每个模块添加到gulp文件中。

我试过在laravel elixir中使用webpack添加glob字符:

代码语言:javascript
复制
require('laravel-elixir-webpack');

elixir(function (mix) {    
    mix.webpack(
        ['angular/app.js', '.angular/modules/**/app.js'],
        {
            output : {
                filename : './angular/app.js'
        }
})

还可以使用gulp-webpackglob_entries

代码语言:javascript
复制
gulp.task('compileAngularScripts', function(){
    return gulp.src('angular/app.js')
        .pipe(webpack({
            entry :   glob_entries('./resources/assets/js/angular/modules/**/app.js'),
            output : {
                filename : 'app.js'
            }
        }))
        .pipe(gulp.dest('test/'));
});

我甚至不能让全局通配符工作来动态地连接文件,更不用说将每个模块分解成它自己的文件了。

有没有办法用gulp来实现这一点呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-23 23:39:05

我通过使用带有webpackglob npm包实现了这一点。

代码语言:javascript
复制
var glob                     = require('glob');
var webpack                  = require('gulp-webpack');

 elixir(function (mix) {
    .task('compileScripts')


gulp.task('compileScripts', function () {

return gulp.src('angular/app.js')
    .pipe(webpack({
        entry  : entries(),
        output : {
            filename : "[name]Module.js"
        }
    }))
    .pipe(gulp.dest('public/js/angular/modules'));
});

function entries() {
    var entries = {};
    glob.sync('./modules/**/Resources/assets/angular/app.js').forEach(function (url) {
        var moduleNmae      = url.split("/")[2];
        entries[moduleNmae] = url;
    });

    return entries;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39085353

复制
相关文章

相似问题

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