Backbone.js和Require.js:不匹配的匿名define()模块:function(_,Backbone){

时间:2014-04-17 21:09:56

标签: javascript jquery backbone.js requirejs

我是使用require.js的新手,并将以下app.js文件作为我的骨干应用程序的一部分:

require.config({
baseUrl: "/js/",
paths: {
    jquery: 'libs/jquery-2.1.0',
    underscore: 'libs/underscore-min',
    backbone: 'libs/backbone-min'
},
shim: {
    underscore: {
        exports: "_"
    },
    backbone: {
        deps: ['underscore', 'jquery'],
        exports: 'Backbone'
    },
}
});

在我的index.html文件的标签中,我放置了以下内容:

define(['underscore', 'backbone'], function (_, Backbone) {

但是,我的index.html文件出现以下错误:

Uncaught ReferenceError: Backbone is not defined

以下在我的require.js文件中:

Uncaught Error: Mismatched anonymous define() module: function (_, Backbone) {

任何线索?

1 个答案:

答案 0 :(得分:0)

我正在使用上面的配置

as you can see is there minimals diffs

正如您可以看到将我的样本图像与您声明的方式进行比较,是否有最小差异:

  • 您无需在shim声明paths个库,只需使用相同的名称;
  • 我的baseUrl从我的js\lib文件夹开始;
  • 我在json配置上使用文件名;

当我在主html页面上声明“setup”时,我正在使用:

<script data-main="js/setup.js" src="js/lib/require.js"></script>