Wie kann ich pass query-string an backbone.js routing

Ich bin mit Backbone.js und jQuery-mobile. jQuery-mobile-routing ist deaktiviert und ich benutze die lib nur für das UI. Ich habe alles funktioniert, außer der Auswahl-Seite-übergang. Brauche ich zum bestehen der Seite-transition ('slice-up', 'fade', 'slide-down") mit dem Backbone-router, denn der übergang ist unterschiedlich, je nachdem, wo der Benutzer kommt.

Ich dachte, eine sehr hässliche Art und Weise, es zu tun, übergeben Sie über die 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)

Hier ist der html-link für default-transition:

<a href="#" data-icon="back" class="ui-btn-left">Back</a>

Hier ist der html-link für den fade-übergang:

<a href="#fade" data-icon="back" class="ui-btn-left">Back</a>

Mithilfe der query-string, d.h. /Essen/neue?transition= "fade" ist definitiv besser, aber ich weiß nicht, wie zu definieren, die die backbone-routing zu verwenden query-string-Variablen.

Wie sollte ich das tun?

Gibt es eine elegantere Art das zu handhaben, mein problem ist, d.h. die übergabe der variable nicht über die url?

InformationsquelleAutor der Frage PreslavLe | 2012-04-01

Schreibe einen Kommentar