Я использую Backbone.js и jQuery-mobile.jQuery-мобильная маршрутизация отключена, и я использую lib только для пользовательского интерфейса.У меня все работает, кроме выбора перехода страницы.Мне нужно передать переход страницы («slice-up», «fade», «slide-down») на магистральный маршрутизатор, потому что переход меняется в зависимости от того, откуда пришел пользователь.
Я понялочень уродливый способ сделать это, передать их через URL:
class App.Routers.Foods extends Backbone.Router
routes:
'': 'index'
':transition': 'index'
'foods/new': 'new'
'foods/new/:transition': 'new'
initialize: ->
@collection = new App.Collections.Foods()
@collection.fetch()
index: (transition)->
view = new App.Views.FoodIndex(collection: @collection)
App.changePage(view, transition)
new: (transition)->
view = new App.Views.FoodNew(collection: @collection)
App.changePage(view, transition)
Вот ссылка html для перехода по умолчанию:
<a href="#" data-icon="back" class="ui-btn-left">Back</a>
Вот ссылка html для перехода исчезновения:
<a href="#fade" data-icon="back" class="ui-btn-left">Back</a>
Использование строки запроса, например, / food / new? Transition = 'fade' определенно лучше, но я не знаю, как определить магистральную маршрутизацию для использования переменных строки запроса.
Как мне это сделать?
Есть ли более элегантный способ справиться с моей проблемой, то есть передать переменную, вообще не используя url?