1

バックボーンルーターを機能させようとしています。何も起こらない状況の1つがあるため、問題を特定するのは困難です。

ルートの問題を特定できるように、ルーターが実際に受信しているものを確認する方法はありますか?

これまでのコードは次のとおりです。

// ROUTER
var TheRouter = Backbone.Router.extend({
    // ROUTES
    routes: {
        "":               "main",
        "/route1/:key":   "route1"

    },
    // INITIALIZE
    initialize: function() {
        _.bindAll(this);
    },

    // ROUTES
    main: function(){
        alert('main');
    },

    route1: function(key){
        alert(key);
    }

});

// Create new router
var theRouter = new TheRouter();
// Start history
Backbone.history.start({pushState: true});

本当にありがとう!

4

2 に答える 2

1

routeのイベントにバインドできますBackbone.historyソースコードによると、そのイベントからルーターに入るすべての情報を取得します。つまり、それができるはずですconsole.log

于 2012-08-05T19:08:43.923 に答える
1

2番目のルートの先頭からスラッシュを削除する必要があります。だから

    "/route1/:key":   "route1"

ラインは

    "route1/:key":   "route1"

それでもフィードバックが得られない場合は、依存するスクリプトを正しい順序(jquery.js、underscore.js、backbone.js、yourRouter.js)で定義していることを確認してください。

于 2012-08-05T19:13:41.360 に答える