首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需求依赖加载超时

问需求依赖加载超时
EN

Stack Overflow用户
提问于 2014-04-22 16:47:02
回答 1查看 169关注 0票数 0

我试图通过将jquery定义为依赖关系来加载jquery插件。

代码语言:javascript
复制
requirejs.config({
    baseUrl: '/assets/',
    paths: {
        jquery: 'jquery',
        jqueryujs: 'jquery_ujs',
        jquerybackstretch: 'jquery.backstretch',
        jquerysticky: 'sticky',
        jquerydialog: 'jquery.ui.dialog',
        app: 'index'
    },
    shim: {
        'jqueryujs': {
            deps: ['jqueryujs']
        },
        'jquerybackstretch': {
            deps: ['jquerybackstretch']
        },
        'jquerysticky': {
            deps: ['jquerysticky']
        },
        'jquerydialog': {
            deps: ['jquerydialog']
        },
        'app': {
            deps: ['app']
        }
    }
})

require(['jquery', 'jquerybackstretch', 'jqueryujs', 'jquerysticky', 'jquerydialog', 'app'], function($) {

})

这是错误消息

代码语言:javascript
复制
Load timeout for modules: jquerybackstretch,jqueryujs,jquerysticky,jquerydialog,app

是否正确加载了所有插件?还有其他好的方法来加载插件吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-22 17:10:33

这不起作用的原因是在shims中设置了循环依赖项。例如:

代码语言:javascript
复制
'jqueryujs': {
    deps: ['jqueryujs']
}

这告诉RequireJS模块依赖于自身。想必,所有在其名称中包含jquery的模块都依赖于jQuery,因此我预计如下:

代码语言:javascript
复制
shim: {
    'jqueryujs': {
        deps: ['jquery']
    },
    'jquerybackstretch': {
        deps: ['jquery']
    },
    'jquerysticky': {
        deps: ['jquery']
    },
    'jquerydialog': {
        deps: ['jquery']
    }
}

我不知道(大部分)这些模块是什么,所以我无法判断它们是否相互依赖。您应该检查它们是否这样做,并将所需的内容添加到deps设置中。

我不知道您的app模块是什么。如果它是您自己为加载RequireJS而创建的一个模块,那么它应该使用一个适当的依赖项列表调用define,并且您不应该为此需要一个shim。

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

https://stackoverflow.com/questions/23225569

复制
相关文章

相似问题

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