1

我有这个需要 jQuery 的插件。由于某些不相关的原因,我不会使用 jQuery 版本的 require。

define(['jquery','dep1','dep2','mymodule'],function($,foo,bar,plugin){
    //all loaded
});

由于 AMD 加载程序的性质,无法保证订单。订单插件还声明该插件不能与定义调用一起使用,因此,模块定义。而且API只保证参数的顺序,不保证执行的顺序。因此,如果在 jQuery 之前发生 mymodule 加载的事件,它将失败。

如何保证在插件之前加载所需的依赖项?

4

2 回答 2

1

首先,您似乎没有使用订单插件;订单插件需要您order!在文件名之前添加。

其次,您的mymodule文件也应该有定义jQuery为要求。这将确保 jquery 在 mymodule 之前加载,而不必依赖于 order 插件。

模块 1

define(['jquery','dep1','dep2','mymodule'],function($,foo,bar,plugin){
    //all loaded
});

mymodule.js

define(['jquery'],function($){
    //all loaded
});
于 2012-05-08T14:49:51.700 回答
0

你可以这样做:

define(['jquery', 'dep1', 'dep2'], function() {
    //load myModule separately
    var m = require('mymodule');
});
于 2012-05-07T14:29:03.040 回答