newしてない
var MyRouter = Backbone.Router.extend({
});
+ router = new MyRouter();
してください。
history.start()してない
var router = new MyRouter();
+ Backbone.history.start();
してください。
pushStateの指定がない
- Backbone.history.start();
+ Backbone.history.start({ pushState:true });
この指定をしないと、ハッシュ"#"を使ったURLとして解釈されます。普通の静的っぽいURLで動かすならこの指定が必要。
routing冒頭の"/"を取り除いていない
routes: {
- '/': 'home',
- '/users/:id': 'showUser'
+ '': 'home',
+ 'users/:id': 'showUser'
},
"/"あると駄目。なんでだろね。
404用のroutingで上書きされてる
routes
で'*path':'notFound'
設定したりするんだけど、登録順序を考慮してやらんと全部notFound
になっちゃう。全部routes
に書くんじゃなくて、notFound
だけ書いておいて、他は初期処理でroute
を使って登録すると良い。
(気が向いたらもっと詳しく書く)
その他
コメントで教えてください。追加します。