This question is similar to 9595182 which explains how to programatically add routes. This is great, however I am trying to add a catch all handler. When I do I get a 404 for all routes.
Workspace = Backbone.Router.extend({
routes: {
"help": "help",
"search/:query/p:page": "search",
},
help: function() {
console.log("help");
},
search: function(query, page) {
console.log("search",query,page);
}
});
app = new Workspace();
Backbone.history.start();
//This works
app.route("page/:number", "page", function(number){
console.log("page called! " + number);
});
//This returns a 404 for everything
app.route("*notFound", "page", function(){
console.log("404 error");
});
app.navigate('page/4',{trigger:true});
app.navigate('page/3',{trigger:true});
app.navigate('oohh404',{trigger:true});
Here is my jsfiddle