2012-01-09 2 views
0

Существуют различные способы вызова маршрутов. В настоящее время я использую Router.navigate ('/ url', true) в моих функциях просмотра для запуска маршрута, но также представляется возможным запустить маршрут с привязным тегом с хешем url в качестве атрибута href.Каков наилучший способ запуска маршрутов в backbonejs?

Способ, которым я представляю коллекцию на экране, также имеет какое-то отношение к этому, я думаю. У меня есть глобальный «индексный» вид, который отображает новое подчинение для каждого элемента из коллекции.

render : function() { 
     var self = this; 

     $(this.el).html(_.template(this.template, {})); 

     this.collection.each(function(model) { 
      self.addOne(model); 
     }); 
    }, 

    addOne : function(model) { 
     var project = new TMRS.views.projects.Record({ model : model }); 

     $(this.el).append(project.render().el); 
    }, 

В подвид я вызвать маршрут, когда конкретный элемент щелкнул, она работает, и это легко, как пирог. Но когда я решаю использовать привязки с хэшами, для подлодки больше нет nu, потому что я могу просто перебирать коллекции в своих шаблонах и обрабатывать URL-адреса с привязными тегами.

Я думаю, что лучше использовать один вид для каждой записи, но я не знаю, подходит ли это путь. Ребята, что вы думаете?

ответ

1

Я столкнулся с этой проблемой в моем проекте магистрали. Я думаю, все сводится к масштабируемости. Вы когда-нибудь видели, что подкласс должен стать более сложным? Если это так, то лучше идти вперед. Если вы идете по шаблону решения, то по дороге вам просто нужно будет воссоздать subview и подключить его снова, если вам нужно что-то более сложное, чем якоря.

В моем проекте я сделал итерации шаблона для выпадающих списков. Они никогда не станут более сложными. (Скорее всего).

Большинство других вещей я пошел вперед и сделал subview, чтобы мне не пришлось выполнять эту работу позже, если это необходимо. Кроме того, на самом деле этого не требуется.

Это мои 2 цента, но на самом деле я не думаю, что есть неправильный путь.

+0

Ваш ответ имеет большой смысл! Только сегодня я решил сделать subview более сложным, поэтому я поеду с subview. – Jacob

+0

Рад помочь! Удачи вам в вашем базовом проекте: D – Mike

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