2013-09-02 4 views
0

Невозможно выяснить, что происходит с моим магистральным маршрутизатором. Может ли кто-нибудь обнаружить ошибку в следующем блоке кода? Маршрут индекс работает нормально, но маршрут классов не всегда запуска (например, когда я перейти к URL, как localhost/classes/test)Настройка магистрального маршрутизатора

var app = app || {}; 

$(function() { 


    app.Router = Backbone.Router.extend({ 
     routes: { 
      '' : 'index', 
      'classes/:id' : 'classes' 
     }, 

     initialize: function() { 
      this.classList = new app.ClassCollection(); 
     }, 

     index: function() { 
      this.menuView = new app.ClassCollectionView({collection: this.classList}); 
     }, 

     classes: function(id) { 
      console.log("hello") 
      var _class = new app.ClassModel({id: id}); 
      this.classView = new app.ClassPageView({model: _class}); 
     } 
    }); 

    router = new app.Router(); 
    Backbone.history.start({pushState: true}); 
}) 

Если все в порядке, там, наверное, ошибка где-то в моем коде.

ответ

3

Backbone.router расширяющего hashbang навигации. так localhost/# classes/test

должен привести к вашему методу. ТАКЖЕ! обратите внимание, что маршрут emty должен быть в конце списка маршрутов. Как и в случае строительства, если маршрут соответствует «" (по умолчанию #?!), Он никогда не будет соответствовать другим маршрутам

0

по умолчанию маршрут будет работать с хэш-попытка LOCALHOST/# классами/тестом

Смежные вопросы