Javascript 早午餐如何禁用RequireJS模块包装

Javascript 早午餐如何禁用RequireJS模块包装,javascript,coffeescript,angularjs,brunch,Javascript,Coffeescript,Angularjs,Brunch,更新: 对于任何有兴趣使用的人,我已经制定了一个种子项目 我在用。提供模块系统,因此使用commonJS/AMD导入文件是多余的。是否可以对/app目录中的文件禁用此功能?基本上,我希望它像编译/vendor目录一样编译文件 因此,首选结果是: joinTo: 'js/app.js': /^app/ 'js/vendor.js': /^vendor/ js/app.js和js/vender.js都包含各自文件夹中的编译文件,但都没有包装 有人有什么想法吗 更新 语法已从@j

更新: 对于任何有兴趣使用的人,我已经制定了一个种子项目

我在用。提供模块系统,因此使用commonJS/AMD导入文件是多余的。是否可以对
/app
目录中的文件禁用此功能?基本上,我希望它像编译
/vendor
目录一样编译文件

因此,首选结果是:

  joinTo:
    'js/app.js': /^app/
    'js/vendor.js': /^vendor/
js/app.js
js/vender.js
都包含各自文件夹中的编译文件,但都没有包装

有人有什么想法吗

更新 语法已从@jcruz应答时更改。这是现在做这件事的方法

最后,我使用了@jcruz-answer的修改版本

exports.config =
  modules:
    definition: false
    wrapper: (path, data) ->
      """
(function() {
  'use strict';
  #{data}
}).call(this);\n\n
      """
  files:
    javascripts:
      defaultExtension: 'coffee'
      joinTo:
        'js/app.js': /^app/
        'js/vendor.js': /^vendor/
默认情况下,“原始”包装不包括coffeescript的标准包装。通过将jsWrapper设置为:

wrapper: (path, data) ->
  """
(function() {
  'use strict';
  #{data}
}).call(this);
  """

文件将按预期进行包装。

最近刚刚添加了禁用模块包装的功能

我不相信npm上有这些功能的版本,但你可以从github repo重新安装早午餐

一旦你做了早午餐,在config.coffee中将jsWrapper设置为“raw”

像这样的

exports.config =
  jsWrapper: 'raw'
  files:
    javascripts:
      defaultExtension: 'js'
      joinTo:
        'javascripts/app.js': /^app/
        'javascripts/vendor.js': /^vendor/

“早午餐b”和包装代码应该消失

据我所见,现在已更改为模块配置:

自2017年1月(几乎)起,必须将npm enabled与模块设置一起声明为false。不过,我花了一段时间才发现。(这是通过a找到的)。希望这有帮助。干杯

以下是一个工作配置文件:

// See http://brunch.io for documentation.
module.exports = {
    files: {
      javascripts: {
        joinTo: {
          '/js/app.js': /^app/,
          '/js/vendor.js': /^(?!app)/
        }
      },
      stylesheets: {
        joinTo: 'css/app.css'
      }
    },

    paths: {
      public: '/priv/static'
    },

    npm: {
      enabled: false
    },

    modules: {
      wrapper: false,
      definition: false
    }
}

我最终传递了一个函数,将文件包装在标准的coffeescript包装器中,但除此之外,它工作得非常好。非常感谢。嘿,谢谢你用新语法更新这个问题。我刚刚更新了早午餐,旧的“jsWrapper”语法不起作用。
// See http://brunch.io for documentation.
module.exports = {
    files: {
      javascripts: {
        joinTo: {
          '/js/app.js': /^app/,
          '/js/vendor.js': /^(?!app)/
        }
      },
      stylesheets: {
        joinTo: 'css/app.css'
      }
    },

    paths: {
      public: '/priv/static'
    },

    npm: {
      enabled: false
    },

    modules: {
      wrapper: false,
      definition: false
    }
}