早午餐:如何包装供应商代码在AMD模块?(Brunch: how to wrap vendor co

2019-10-22 20:55发布

我希望所有的供应商代码被包裹在AMD模块。 我已经定义在我config.coffee本节:

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

但似乎早午餐采用AMD优化只为“应用程序”文件夹中的文件。 所有供应商的js文件,其中没有任何r.js样预处理(在“定义(...)”语句不添加模块名称)串连。 其结果是,杏仁(它几乎一样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'

Answer 1:

您可以更改conventions.vendor在你的配置的东西,不会为了使模块包装符合您的供应商档案。

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



文章来源: Brunch: how to wrap vendor code in AMD modules?