3

我正在像这样加载 jQuery

require({
    baseUrl: '{{ STATIC_URL }}js',
    paths: {
        jQuery: 'https://ajax.googleapis.com/ajax/libs/jQuery/1.5.1/jquery.min',
        jQueryui: 'http://ajax.googleapis.com/ajax/libs/jQueryui/1.8.12/jquery-ui.min'
    },
    priority: ['jQuery','jQuery-UI']
}, ['main']);

如何订购这样才能在 jQuery 之后加载 jQuery-UI i

4

1 回答 1

3

有一些选项:

1)使用订单插件,则不需要优先配置:

require({
    baseUrl: '{{ STATIC_URL }}js',
    paths: {
        jQuery: 'https://ajax.googleapis.com/ajax/libs/jQuery/1.5.1/jquery.min',
        jQueryui: 'http://ajax.googleapis.com/ajax/libs/jQueryui/1.8.12/jquery-ui.min'
    }
}, ['order!jQuery', 'order!jQueryui', 'order!main']);

2)您可以嵌套 require 调用。在这种情况下,没有“优先级”配置。它最终加载速度有点慢,因为它串行加载脚本:

//Set up config
require({
    baseUrl: '{{ STATIC_URL }}js',
    paths: {
        jQuery: 'https://ajax.googleapis.com/ajax/libs/jQuery/1.5.1/jquery.min',
        jQueryui: 'http://ajax.googleapis.com/ajax/libs/jQueryui/1.8.12/jquery-ui.min'
    }
});

//Do the loading.
require(['jQuery'], function () {
    //This assumes 'main' has explicitly indicated
    //jQueryui as a dependency.
    require(['jQueryui', 'main'] {

    });
});

3) 如果只将 'jQuery' 放在优先级配置中,则只需 require('jQueryui', 'main', 假设 'main' 也将 'jQueryui' 设置为显式依赖项。实际上有了它,你可以require(['main']) 和 jQuery UI 将作为处理 main.js 的一部分加载。

于 2011-09-04T06:58:02.117 回答