首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在require.js和use.js中顺序加载脚本

问在require.js和use.js中顺序加载脚本
EN

Stack Overflow用户
提问于 2012-06-19 15:47:43
回答 1查看 2.5K关注 0票数 1

我正在我的项目中使用插件,它是require.js use.js。

代码语言:javascript
复制
require.config({
// Initialize the application with the main application file
deps: ["main"],

paths: {
    // JavaScript folders
    libs: "../assets/js/libs",
    plugins: "../assets/js/plugins",

    // Libraries
    jquery: "../assets/js/libs/jquery",
    underscore: "../assets/js/libs/underscore",
    backbone: "../assets/js/libs/backbone",
    jqueryUI: "../assets/js/libs/jqueryUI",
    jquerySlider: "../assets/js/libs/slider",
    jqueryMouseWheel: "../assets/js/libs/jquery.mousewheel",    
    jquerySelectBox: "../assets/js/libs/selectBox",
    jqueryMouse: "../assets/js/libs/mouse",
    bookReader: "../assets/js/libs/newReader",

    // Shim Plugin
    use: "../assets/js/plugins/use"
},

use: {
    backbone: {
        deps: ["use!underscore", "jquery"],
        attach: "Backbone"
    },

    underscore: {
        attach: "_"
    },

    jqueryUI: {
        deps: ["jquery"]
    },

    jquerySlider: {
        deps: ["jquery", "jqueryMouse"]
    },

    jquerySelectBox: {
        deps: ["jquery"]
    },

    jqueryMouse: {
        deps: ["jquery", "jqueryUI"]
    },

    jqueryMouseWheel: {
        deps: ["jquery", "jqueryUI"]
    },

    bookReader: {
        deps: ["jquery", "jqueryUI", "jqueryMouse", "jquerySlider", "jqueryMouseWheel", "jquerySelectBox"],
        attach: "Reader"
    }
}
});

问题是脚本同时开始加载,由于存在未满足依赖项,因此通常会出现以下两个错误

代码语言:javascript
复制
Uncaught TypeError: Object function (a, b) {return new e.fn.init (a, b, h)} has no method 'widget': 4444/assets/js/libs/mouse.js: 15
Uncaught TypeError: Cannot read property 'mouse' of undefined: 4444/assets/js/libs/slider.js: 20

一旦文件在缓存中,问题就不再出现。所以,我的问题是。如何指定必须一致地加载脚本?

可以构建脚本,将它们包装到一个文件中。但此选项并不是非常可取的

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-19 16:28:15

看看这个名为STEP的AMD加载器插件,它允许你按顺序加载脚本。

https://github.com/requirejs/step

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

https://stackoverflow.com/questions/11096587

复制
相关文章

相似问题

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