Backbone.js requirejs主干有时无法正确加载

Backbone.js requirejs主干有时无法正确加载,backbone.js,requirejs,Backbone.js,Requirejs,三分之一的时候我会说“主干未定义错误”。它指向requirejs文件中的第19行(路由器在路径第21行声明)。就像主干网有时加载速度足够快,有时加载速度不够快。我不知道我做错了什么。下面是requirejs文件和初始化的一部分 require.config({ paths: { //libs jquery: '../../bower_components/jquery/dist/jquery.min', // "jquery-ui": '.

三分之一的时候我会说“主干未定义错误”。它指向requirejs文件中的第19行(路由器在路径第21行声明)。就像主干网有时加载速度足够快,有时加载速度不够快。我不知道我做错了什么。下面是requirejs文件和初始化的一部分

require.config({
    paths: {
        //libs
        jquery: '../../bower_components/jquery/dist/jquery.min',
        // "jquery-ui": '../bower_components/jquery-ui/jquery-ui.min',
        lodash: '../../bower_components/lodash/lodash',
        backbone: '../../bower_components/backbone/backbone-min',
        underscore: '../../bower_components/underscore/underscore-min',
        gridstack: '../../libs/gridstack/dist/gridstack',
        text: '../../bower_components/text/text',                                   
        router: '/client/js/router/router',
        //other modules ...
    }

    shim: {
        "backbone": {
            deps: ['underscore','jquery'],
            exports: "backbone"
        },

        "underscore": {
            exports: "_"
        },
        "jquery": {
            exports: "$"
        },
        "gridstack": {
            deps: ['jquery','underscore'],
            exports: "Gridstack"
        }
    });

require([
  'jquery', 'backbone', 'lodash', 'router', 
], function( $, Backbone, _, Router){
    new Router();
    Backbone.history.start();
});
下面是如何声明我的路由器:

define('router',['appView'] , function(AppView) {
    var router = Backbone.router.extend({
    // etc/

我看到的一个错误是在RequireJS配置中的主干垫片中。显式不支持RequireJS的旧版本主干将导出全局变量
Backbone
,而不是
Backbone
。所以

"backbone": {
    deps: [ 'underscore', 'jquery' ],
    exports: 'Backbone'
}

请注意,
1.1.1
之后的任何BackboneJS版本都支持AMD风格的模块,因此,如果您使用的是最新版本,则根本不需要垫片。事实上,使用支持AMD的版本,但不正确地声明垫片,可能是导致三分之一故障的原因。。。但我必须看一个运行中的示例才能确定。

事实上,我写的垫片是正确的,但在问题中键入的是错误的。。我将删除垫片并查看。感谢可能的副本