2015-11-01 51 views
-1

我的下一個HTML頁面:Backbone.js的簡化版,工作

... 
    <script src="/Scripts/App/pep.js"></script> 

    </head> 
    <body> 
    <div id="main"> 
     &nbsp; 
    </div> 
    </body> 
... 

的 'pep.js' 包含一個內容:

var pep = { 

    models: { 
    }, 
    views: { 

     loginView: Backbone.View.extend({ 

      tagName: 'div', 

      id: 'loginContainer', 

      el: $('#main'), 

      events: { 

      }, 

      initialize: function() { 
       this.listenTo(this.model, "change", this.render); 
      }, 

      render: function() { 
       this.$el.html("<p>asd</p>"); 
       return this; 
      } 

     }) 

    }, 
    route: Backbone.Router.extend({ 

     routes: { 
      "login": "login", // #login 
     }, 

     login: function() { 
      var lv = new pep.views.loginView; 
      lv.render(); 
     } 

    }), 
    onReady: function() { 

     var r = new pep.route(); 
     Backbone.history.start(); 

     r.navigate('login'); 
    } 
}; 

$(pep.onReady()); 

路由有工作,但鑑於ISN沒有呈現。有錯誤嗎? Backbone.js版本是1.2.3 Chrome不顯示任何錯誤。調試允許我們看到瀏覽器進入路由器並執行該方法。但是,該方法什麼都不做。

+0

你似乎在聽一個未定義的模型this.listenTo(this.model,',你確定它按預期工作,不會拋出任何錯誤..?*「調試使我們能夠看到瀏覽器進入路由器並執行方法「* - 哪種方法,確切地說..?*」但是,該方法什麼都不做「* - 期望的行爲是什麼......? –

回答

0

如果從屬庫位於文檔的正文的末尾,而不是位於標題中,則此代碼有效。

相關問題