1

Hope ページは Ember のない静的ページです。カードをクリックすると、Ember アプリがそれを利用できるように、その ID を URL パラメーターに渡します。

http://cards.com/category?category_id=2&selected_card_id=3

応募ルート:

@controllerFor('creditCards').set 'content', App.CreditCard.find category_id: categoryId

選択したカードを取得して渡したいSelectedCardsController

@controllerFor('creditCards').set 'content', App.CreditCard.find category_id: categoryId
@controllerFor('selectedCards').set 'content', App.CreditCard.find selectedCardId

問題は、それSelectedCardsControllerアレイコントローラーであり、この方法でそのコンテンツを入力しようとすると、次のエラーが発生することですUncaught TypeError: Object [object Object] has no method 'addArrayObserver'

私の質問は、この単一のレコードをアレイ コントローラに渡すにはどうすればよいですか?

4

1 に答える 1

0

これを行う慣用的な方法は、Ember で を使用することneedsです。の を設定する代わりに、contentからSelectedCardsControllerプロパティを直接検索するCreditCardsControllerか、計算されたプロパティを宣言して、ローカル検索をより簡単にすることができます。

App.SelectedCardsController = Ember.Controller.extend({
  needs: 'credit_cards',
  creditCardsBinding: 'controllers.credit_cards',

  selectedCardId: function() {
    return this.get('credit_cards.selectedCardId')
  }.property('credit_cards')
});
于 2013-07-04T17:09:39.173 に答える