ルートに行くときに「ハングマン」機能をトリガーするのに問題があります
アプリケーション.js
var init = function(){
console.log("init called"); #logged
var router = new Router();
console.log(router);
Backbone.history.start();
};
console.log(router) の 'router' 変数を調べると、ルーター オブジェクトにハングマン関数が作成されていることがわかります。
child
__proto__: ctor
constructor: function (){ return parent.apply(this, arguments); }
hangman: function () {
routes: Object
/hangman: "hangman"
__proto__: Object
__proto__: Object
ただし、localhost:3000/hangman に移動すると、アラートが呼び出されません。私が間違っているかもしれないことを提案できますか?Rails アプリでバックボーンを使用しています。Rails ルーター ファイルで localhost:3000/hangman が定義されているため、Backbone が Rails ルートをどのように認識しているかよくわかりません。バックボーン ルートをアクティブにするために localhost:3000/hangman/#hangman を実行する必要があるのではないかと考えましたが (レール ルートは関係ありません)、それもうまくいきませんでした。
router.js
$(function() {
window.Router = Backbone.Router.extend({
routes: {
'/hangman' : 'hangman'
},
hangman: function() {
console.log("hangman called"); #never logged
alert("hangman");
}
});
});