2012-02-18 10 views
8

Say I wykonaj następujące czynności:Jak wyłączyć historię szkieletową, ale nadal zezwalam na routing oparty na haszyszu?

  • Kliknij link na stronie głównej (/) i przejdź do/stanowisk/1
  • wyzwalać zdarzenia i przejść do trasy szkieletowej/posty/1/#/1/edit
  • klikam wstecz

muszę zrobić to tak, że użytkownik kończy się z powrotem na stronie głównej (/) nie z powrotem w/posty/1

więc muszę pozwolić na kręgosłup hash do pracy, ale nie modyfikuj historii. Osobiście wolałbym zachować historię, ale jest to wymóg projektu.

Odpowiedz

13

Najnowsza wersja kręgosłupa (0.9.x) ma możliwość wyzwalania trasy, ale nie dodawania jej do historii.

Wyświetl opcję Backbone.Router#navigate dla opcji replace: true.

Zasadniczo, po prostu zadzwoń .navigate na routerze ze spustem: true (na ogień trasę) i wymienić: true (aby zapobiec idzie do historii)

app.navigate('posts/1/edit',{trigger:true, replace: true}); 

Oto jsfiddle pokazując go w akcji: http://jsfiddle.net/7Z6ju/1/

  • Kliknij "Opublikuj 1", aby przejść do strony Post 1.
  • Następnie kliknij "Edytuj", aby przejść do strony edycji .
  • Następnie naciśnij przycisk Wstecz - powinieneś wrócić do domu na .
+0

Dziękuję, zupełnie mi tego brakowało w dokumentach \ * facepalm \ * –

+0

Dokumenty są tam źle przeczytane: D –

Powiązane problemy