History.js è più di un polyfil per i browser che non supportano nativamente HTML5 pushState e per stirare le differenze tra le diverse implementazioni del browser di pushState.
Davis.js è uno strato di routing, principalmente in cima a pushState (sebbene possa essere facilmente sostituito con il routing hash). Ti dà una semplice API per definire e rispondere ai percorsi all'interno della tua applicazione.
Il router di Backbone è simile a Davis, tuttavia tenta di tornare automaticamente al routing basato su hash quando pushState non è disponibile.
Come autore di Davis, ho un po 'di pregiudizio, ma penso che la Davis api sia leggermente più bella e più potente della dorsale. Penso anche che tentare di gestire con garbo il ritorno al routing basato su hash quando pushState non è disponibile non vale lo sforzo e la complessità che può introdurre.
fonte
2012-02-11 16:43:12
Grazie per la spiegazione: D –
I trovato che history.js con il supporto pushtate html5 nel browser non può funzionare con "thorsteinsson/jquery-routes" e "mstahl/jQuery-Routes". (Questi router richiedono # in url per funzionare). quindi, non sono sicuro che quelli con Davis.js e Backbone funzioneranno? – vee
È possibile disabilitare il fallback su # in backbone – Tosh