5

どういうわけか、私はいつもこのエラーを受け取ります:

Uncaught ReferenceError: jQuery が定義されていません

jQuery(CDN経由でロード)はロードに時間がかかる印象があります(Chromeのネットワークタブで確認)。私はこれを自分の PC でローカルに実行しているため、CDN 呼び出しは常にライブラリよりも長くなります。しかし、requirejs は、jQuery がロードされた後、他のライブラリをロードする前に待機することになっていませんか?

私の boot.js :

(function(){
    requirejs.config({
        baseUrl: '/assets/js/',
        paths: {
            'lib': 'lib/',
            'src': 'src/',
            'jquery': [
                '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min',
                'lib/jquery-1.9.1.min'
            ],
            'mootools': 'lib/mootools-core-1.4.5',
            'class.mutators': 'lib/Class.Mutators.jQuery'
            //'order': 'assets/js/lib/order',
        },
        shim: {
            'class.mutators': {
                deps: [
                    'mootools'
                ],
                exports: 'classmutators'
            },
            'underscore': {
                    exports: '_'
            }
        },
        waitSeconds: 15
    });

    requirejs([
        'jquery',
        'src/app-require'
    ], function($){
        $(document).ready(function(){
            var App = new $.App($('body'));
        });
    });

})();

私の app-require.js :

define([
    'mootools',
    'class.mutators',
    'src/Tracker',
    'lib/jquery.easing.1.3',
    'lib/nivo/jquery.nivo.slider.pack',
    'lib/isotope/jquery.isotope.min',
    'lib/waypoints.min'
], function() {

var className = 'App';
//--
return $[className] = new Class({
    jQuery: className,

    Implements: [Options, Events],

    options: {},

    //-- init
    //---------------------------------------------
    initialize: function(el, options) {
              ...
    },

            ...
    });
});

何か案は?

4

1 に答える 1

4

jQuery は依存関係にありません。mutator の shim 依存関係に追加する必要があります。

  shim: {
            'class.mutators': {
                deps: [
                    'jquery',
                    'mootools'
                ],
                exports: 'classmutators'
            },
            'underscore': {
                    exports: '_'
            }
        },

shim を使用して jQuery 依存関係を処理する方法の公式の例を次に示します: https://github.com/requirejs/example-jquery-shim#how-its-set-up

于 2013-06-10T06:06:12.163 に答える