2016-03-24 17 views
1

コンポーネント内の単純な配列。セレクタタグに表示されます。私はそれを働かせることができません。 firstSelectorは何も表示しません。 component.jsでコンポーネントに表示する単純な配列を表示する

:私はcomponent.hbsでこのようfirstSelectorを書く場合

sortPropertiesAsc: ['value:asc'], 
    selectors: ['model.modelObjects', 'model.location'], 

    firstSelector: function(){ 
    const firstGroupObjects = this.get('selectors')[0]; 
    return Ember.computed.sort(firstGroupObjects, 'sortPropertiesAsc'); 
    }.property(), 

component.hbsで

<select onchange={{ action 'selectBrand' value="target.value" }}> 
     <option value="" >Select company</option> 
     {{#each firstSelector as |company|}} 
     <option value={{company.id}} selected={{eq brand company.id}}> {{company.value}}</option> 
     {{/each}} 
    </select> 

は、それが動作します:

firstSelector: Ember.computed.sort('model.modelObjects', 'sortPropertiesAsc'), 

他の方法(関数として)で書く方法

答えて

0

あなたの設定ではすべてのことがわかりませんが、selectorsへの変更に基づいてcomputed propertyを発動させたいと思ったのですが、このようなものが必要です。

firstSelector: Ember.computed('selectors', function() { 
    const firstGroupObjects = this.get('selectors.firstObject'); 
    return Ember.computed.sort(firstGroupObjects, 'sortPropertiesAsc'); 
    }) 

sortPropertiesAscもし変更が、これは私が探していたものであるあなたも

firstSelector: Ember.computed('selectors', 'sortPropertiesAsc', function() { 
    const firstGroupObjects = this.get('selectors.firstObject'); 
    return Ember.computed.sort(firstGroupObjects, 'sortPropertiesAsc'); 
    }) 
+0

おかげで、それを追加したいと思い値! – Wesley

関連する問題