繁体   English   中英

早午餐:如何将供应商代码包装在AMD模块中?

[英]Brunch: how to wrap vendor code in AMD modules?

我希望所有供应商代码都包装在AMD模块中。 我在config.coffee中定义了此部分:

modules:
    wrapper: 'amd'
    definition: 'amd'

但似乎早午餐仅将AMD优化器用于“ app”文件夹文件。 包含所有供应商js文件的文件,没有任何类似于r.js的预处理(“ define(...)”语句中未添加模块名称)。 结果,Almond(几乎与RequireJS相同)在供应商文件执行期间抱怨匿名模块定义。

这是我的完整配置:

exports.config =

  paths:
    public: 'public'

  files:
    javascripts:
      defaultExtension: 'js'

      joinTo:
        'js/app.js': /^app/
        'js/vendor.js': /^vendor[\\/](?!mocha|chai|sinon|sinon-chai)/
        'js/tests.js': /^test/
        'js/tests-vendor.js': /^vendor[\\/](?=mocha|chai|sinon|sinon-chai)/

      order:
        before: [
          'bower_components/almond/almond.js',
          'bower_components/jquery/jquery.js',
          'bower_components/lodash/dist/lodash.underscore.js'
        ]

    stylesheets:
      defaltExtension: 'less'

      joinTo:
        'css/styles.css': /^(vendor[\\/](?!mocha|chai|sinon|sinon-chai)|app)/
        'css/tests-vendor.css': /^(vendor[\\/](?=mocha|chai|sinon|sinon-chai))/

    templates:
      defaultExtension: 'hbs'
      joinTo: 'js/app.js'

  modules:
    wrapper: 'amd'
    definition: 'amd'

您可以将配置中的conventions.vendor更改为与供应商文件不匹配的内容,以启用模块包装。

https://github.com/brunch/brunch/blob/master/docs/config.md#conventions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM