Я хочу передать пары значений ключей в качестве параметров маршрутам Backbone и хочу, чтобы они были десериализованы к объекту javascript до того, как будет вызвана маппируемая функция.
var MyRouter = Backbone.Router.extend({
routes: {
"dashboard?:params" : "show_dashboard"
},
show_dashboard: function(params){
console.log(params);
}
});
Когда я иду на "http://...#dashboard?key1=val1&key2=val2", то {key1: "val1", key2: "val2"} должны быть напечатаны на консоли.
В настоящее время я использую метод $.deparam jQuery BBQ внутри каждой mapped-функции для получения десериализованного объекта. Было бы неплохо, если бы я мог расширить Router и определить его только один раз, чтобы параметры были доступны внутри всех mapped-функций как объект. Что было бы чистым способом сделать это? И есть ли в этом какие-то подводные камни?
Большое спасибо,
mano