Показать сообщение отдельно
  #1 (permalink)  
Старый 04.09.2012, 16:38
Аватар для LittlePony
Кандидат Javascript-наук
Отправить личное сообщение для LittlePony Посмотреть профиль Найти все сообщения от LittlePony
 
Регистрация: 19.08.2012
Сообщений: 100

Обработка адресов в backbone.js
Как правильно поступить?

Обработку хэш-навигации делаю средствами backbone.js. Весьма удобен класс Router.
var Router = Backbone.Router.extend({
	routes: {
		"":	"GoToSection",
		"!/:section": "GoToSection",
		"!/:section/:page": "GoToSection"
	},
	GoToSection: function(section){
		if(!section) section = "pagehead"
		var $target = $("#"+section)
		if($target.size()==1) $("html,body").animate({scrollTop:$target.offset().top})
	}
})


И вот какую штуку хочу сделать:
чтобы первое слово в адресе обрабатывалось этим самым роутером, а второе брала на себя соответствующая вьюха.
На примере:
site.com/#!/timeline/1941
— в этом случае роутер прокрутит страницу к разделу #timeline, на котором размещена конструкция с годами. За эту конструкцию в свою очередь отвечает специально обученная вьюха. И вот она должна год из адреса взять и произвести на основе действия, о которых роутер знать не обязан.

Как правильно такие задачи решать?
Или, если я вообще не в ту сторону думаю, ткните меня носом, в какую сторону думать правильно.
Ответить с цитированием