3

あるルートを訪れてから別のルートに移動した場合、どのルートから来たかを知る方法はありますか?
私は試しましたdocument.referrer- これはうまくいきません。グーグルも何の答えももたらさなかった..

たとえば、このフィドルをセットアップしてテストしました..

4

1 に答える 1

4

APIを使用した直接的な解決策はありません。つまり、この情報はパブリックAPIの一部ではありません。ただし、この情報を自分でキャッシュすることはできます。

App.set('lastRoutes', []);

App.BaseRoute = Ember.Route.extend({
    setupController: function() {
        this._super.apply(this, arguments);
        App.get('lastRoutes').pushObject(this.get('routeName'));
    }
});

たとえば、/ users/1から/users/ 2に移行する場合、enter / exitメソッドは実行されませんが、setupControllerは毎回実行されるため、「enter」ではなく「setupController」を使用します(これは、パブリックAPI)。ルートがネストされている場合は、中間ルートも追加されるため、これを調整する必要があります。しかし、あなたの例では、それはうまく機能します。

于 2013-02-12T11:55:23.150 に答える