I want to have bookmarkable URLs that the browser can capture and handle. If I just use Backbone.history.start(), then I can use hash URLs, like /#accounts.
But I want URLs without the hashes, a la /accounts. But I can't get this to work using Backbone.history.start( { pushState: true } ) (as others have described it). My routes are straightforward, and taken directly from the documentation.
MyRouter = Backbone.Router.extend({ routes: { '/accounts': 'accounts', } });
I'm using Chrome (also tried with FF), and the behaviour is that an /accounts request goes straight to the server. Not being intercepted by Backbone first. Has anyone run into this? How do I get hash-less URL handling with Backbone?
Thanks in advance
You would navigate to that url with js using router.navigate( "/accounts", true )
, not by links or entering the url yourself. To use links, you must bind a click event to them and prevent the default action and call navigate to the links href.
router
is an instance of Router
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With