Javascript RequireJS依赖序列

Javascript RequireJS依赖序列,javascript,jquery,jquery-plugins,requirejs,Javascript,Jquery,Jquery Plugins,Requirejs,我有一个需要jQuery的插件。由于某些不相关的原因,我不会使用jQuery版本的require define(['jquery','dep1','dep2','mymodule'],function($,foo,bar,plugin){ //all loaded }); 由于AMD装载机的性质,订单无法保证。还声明插件不能与define调用一起使用,因此不能使用模块定义。并且只保证参数的顺序,而不是执行的顺序。因此,如果在jQuery之前加载mymodule,那么它将失败 如何保证在

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

define(['jquery','dep1','dep2','mymodule'],function($,foo,bar,plugin){
    //all loaded
});
由于AMD装载机的性质,订单无法保证。还声明插件不能与define调用一起使用,因此不能使用模块定义。并且只保证参数的顺序,而不是执行的顺序。因此,如果在jQuery之前加载mymodule,那么它将失败

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

您可以这样做:

define(['jquery', 'dep1', 'dep2'], function() {
    //load myModule separately
    var m = require('mymodule');
});
您可以这样做:

define(['jquery', 'dep1', 'dep2'], function() {
    //load myModule separately
    var m = require('mymodule');
});

首先,看起来你没有使用订单插件;订单插件需要您预先编写
order到文件名

其次,您的
mymodule
文件还应该将define
jQuery
作为一项要求。这将确保jquery在mymodule之前加载,而不必依赖于order插件

模块1

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

define(['jquery'],function($){
    //all loaded
});

首先,看起来你没有使用订单插件;订单插件需要您预先编写
order到文件名

其次,您的
mymodule
文件还应该将define
jQuery
作为一项要求。这将确保jquery在mymodule之前加载,而不必依赖于order插件

模块1

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

define(['jquery'],function($){
    //all loaded
});