使用RequireJS加载模块及其所有插件

时间:2012-10-18 01:18:52

标签: javascript jquery requirejs

有办法吗

require ['jquery'], ($) ->
  ...

而不是

require ['jquery', 'jquery-cookies', 'jquery-scroll', 'jquery-foo', jquery'bar'], ($) ->
  ...

每一次?

1 个答案:

答案 0 :(得分:2)

一种选择就是定义一个与你的插件jquery的新模块。

// new module in something like jqueryBundle.js
define(['jquery', 'jquery-cookies', 'jquery-scroll', 'jquery-foo', 'jquery-bar'],  function($) {
    return $;
});

然后你可以只需要jqueryBundle。

编辑:根据评论建议,我忽略了提到我的答案要求jquery插件是amd模块(由作者或由你包裹)或已经通过shim配置配置:http://requirejs.org/docs/api.html#config-shim

许多jquery插件不是AMD模块,但通常是简单的shim配置的理想选择。对于小样本,请参阅我对另一个问题的回答:Using require.js with Twitter Boostrap API and backbone