3

「redirectTo」パラメーターとして Ember から現在の URL を取得する必要があります。このパラメーターは、ユーザーが他のアプリからログインした後、ユーザーを同じページにリダイレクトするために使用されます。URLは次のようになります

http://test.com/apps/#/tables/7

アプリケーションから currentPath/route を取得するために、この投稿を見つけました。現在のルート名を提供しますが、どうすれば Ember から ID を含む完全なパスを取得できるのでしょうか。以下のようなネストされたルート宣言があります。

App.Router.map(function() {
  this.resource('tables', function() {
    this.resource('table', { path: ':table_id' });
  });
});

どんな提案でも大歓迎です。ありがとう!

4

3 に答える 3

3

ApplicationController を観察しcurrentPath、現在の URL を更新します。

App.ApplicationController = Ember.Controller.extend({
  currentPathDidChange: function() {
    App.currentUrl = window.location.href;
  }.observes('currentPath')
});
于 2013-06-17T21:19:45.013 に答える
1

window.locationだけを使用できますか?

var url = window.location.href;
于 2013-06-17T18:06:08.533 に答える
-1

ありがとう@Panagiotis Panagi、うまくいきます。

さらに、 currentUrl はアプリケーションコントローラーからのみアクセスできるため、他の場所から取得したい場合は、アクセスしたい特定のコントローラーにこのコードを追加できます:

export default Ember.Controller.extend({
  needs: ['application'],
  currentPath: Ember.computed.alias('controllers.application.currentPath'),
    ...

}
于 2015-06-27T15:41:44.873 に答える