Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 无法调用方法';绑定&x27;未定义的主干布局管理器的定义_Backbone.js_Requirejs_Backbone Layout Manager - Fatal编程技术网

Backbone.js 无法调用方法';绑定&x27;未定义的主干布局管理器的定义

Backbone.js 无法调用方法';绑定&x27;未定义的主干布局管理器的定义,backbone.js,requirejs,backbone-layout-manager,Backbone.js,Requirejs,Backbone Layout Manager,我不明白我做错了什么。我试图在我的应用程序中使用主干布局管理器,下面的简单代码导致错误:“无法调用未定义的方法‘bind’” 这是我的main.js文件: require.config({ paths: { jquery: 'libs/jquery', underscore: 'libs/underscore', backbone: 'libs/backbone', layoutManager: 'libs/backbone

我不明白我做错了什么。我试图在我的应用程序中使用主干布局管理器,下面的简单代码导致错误:“无法调用未定义的方法‘bind’”

这是我的main.js文件:

require.config({
    paths: {
        jquery: 'libs/jquery',
        underscore: 'libs/underscore',
        backbone: 'libs/backbone',
        layoutManager: 'libs/backbone.layoutmanager',
        knockout: 'libs/knockout',
        templates: '../templates'
    },

    shim: {

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

});

require([
    'app',
    'backbone',
    'layoutManager'
], function(App, Backbone, LayoutManager) {

        // Set all Views to be managed by LayoutManager.
    Backbone.Layout.configure({ manage: true });

    App.initialize();

});

知道是什么导致了这个错误吗?

根据您使用的LayoutManager版本的不同,可能是您的填充错误。最新的LayoutManager支持AMD,因此不需要垫片

正如@kryger在您收到的评论中所指出的,请确保下划线正确填充。我敢打赌那是你的问题

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

    underscore: { exports: '_' }
}
您还可以查看有关配置AMD的文档:


^^我已经更新了上面的内容,以包含下划线填充的行。

哪一行导致了这种情况?异常源于哪个库?不确定这是否是您的全部代码,但缺少的一件事是下划线的
垫片
(它不符合AMD),不确定是否需要删除。