1

Twitter の typeahead.js プラグインを使用しています。それを使用するには、Ember の TextField を拡張します。プラグインはすべて正常に動作します。ここで、コントローラー内で値にアクセスできるようにしたいだけです。

ビュークラス内で値バインディングを使用すると、正常に動作します。これがビンの例です。ここでは、値が最初に設定され、後で更新されます。テキスト ビューをテストするには、「aaa」と入力します。

App.TypeAhead = Ember.TextField.extend({      
  classNames: ['cmp-typeahead'],    
  attributeBindings: ['id','value'],    
  valueBinding: 'targetObject.airportCode',
  ....
});

しかし、テンプレートを介して値バインディングを設定しようとすると、うまくいかないようです。これがビンの例です。テキスト ビューをテストするには、「aaa」と入力します。

{{view App.TypeAhead data=airports valueBinding="view.targetObject.airportCode" 
       id="fromAirportCode"}}

私は何を間違っていますか?

4

1 に答える 1

3

ビュー ヘルパーは現在のコントローラーを保持するため、次のように簡単です。

{{view App.TypeAhead data=airports valueBinding="airportCode" 
   id="fromAirportCode"}}

例: http://emberjs.jsbin.com/ciwiv/1/edit

于 2014-04-30T16:20:17.133 に答える