2013-04-12 37 views
1

我试图通过Backbone.js使我的Backbone.js组件,模型和视图模块化。然而,每当我试图require()一个返回:使Backbone.js与Require.js模块化

function(){return i.apply(this,arguments)} 

,而不是骨干巫术我需要。

我已经建立了我的Require.js像这样:

// Configure require.js 
require.config(
    { 
     paths: { 
      "data": "config" 
     , "jquery": "libs/jquery.min" 
     , "underscore": "libs/underscore-min" 
     , "backbone": "libs/backbone-min" 
     , "events": "collections/events" 
     , "eventModel": "models/eventModel" 
     , "eventView": "views/eventView" 
     } 
    , shim: { 
      underscore: { 
       exports: '_' 
      } 
     , jquery: { 
       exports: '$' 
      } 
     , backbone: { 
       deps: ["underscore"] 
      , exports: "Backbone" 
      } 
     } 
    } 
); 

// Initiate app 
require(
    [ 
     "data" 
    , "jquery" 
    , "underscore" 
    , "backbone" 
    , "events" 
    , "eventModel" 
    , "eventView" 
    ], function(data, $, _, Backbone, Events, EventModel, EventView) { 
     console.log(Events); 
     _.each(["data/general.xml"], function(URI) { 
      var general = new Events({url: URI}); 
     }); 
    } 
); 

,这里是我的收藏/ events.js:

​​

我会期望返回Events收集,但是它显然不是。任何人都可以看到我做错了什么?

回答

1

一切似乎都很好。你看到:

function(){return i.apply(this,arguments)} 

是你的类的构造函数。不要理会它。请尝试登录new myClass

编辑:
你看不到任何的方法,因为他们保存在你的类的原型。被调用的函数是“真实”构造函数(因为它已被缩小而被命名为i)。

+0

你说得对,我试图在错误的情况下继续使用它,并认为是问题所在。刚注意到我的错误。傻我。 –

相关问题