首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Requirejs: jQuery未定义

Requirejs: jQuery未定义
EN

Stack Overflow用户
提问于 2013-06-10 05:35:32
回答 1查看 14.6K关注 0票数 5

不知何故,我总是收到这样的错误:

未定义的ReferenceError: jQuery未定义

我的印象是,jQuery (通过CDN加载)需要更多的时间来加载(由Chrome上的网络选项卡确认)。我在我的个人电脑上本地运行这一点,所以CDN调用总是比库长。但是,难道没有必要在加载jQuery之后才加载其他库吗?

我的boot.js:

代码语言:javascript
复制
(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'));
        });
    });

})();

我的应用程序-即:

代码语言:javascript
复制
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) {
              ...
    },

            ...
    });
});

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-10 06:06:12

jQuery不属于任何依赖项。您应该将它添加到mutator的shim依赖项中:

代码语言:javascript
复制
  shim: {
            'class.mutators': {
                deps: [
                    'jquery',
                    'mootools'
                ],
                exports: 'classmutators'
            },
            'underscore': {
                    exports: '_'
            }
        },

下面是如何使用shim:https://github.com/requirejs/example-jquery-shim#how-its-set-up处理jQuery依赖项的正式示例

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17017407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档