2016-11-01 4 views
0

Ember에서 단일 배열 요소의 변경 사항을 관찰 할 수 있습니까?Ember에서 단일 배열 요소의 변경 사항을 관찰

[]@each 속성을 사용하여 모든 배열 요소의 변경 사항을 관찰 할 수 있지만, 한 요소에만 관심이 있고 나머지는 업데이트하지 않으려면 어떻게해야합니까? 특히 어레이의 나머지 부분이 크고 자주 변경되는 경우.

things.[0].name (또는 배열 범위 내의 다른 색인)을 사용하면 효과가 있다고 기대 했겠지만 뭔가 빠졌습니까?

atEachNameChanged: Ember.observer('[email protected]', function() { 
    this.get('messages').pushObject('@each triggered'); 
    }), 

    atIndexedNameChanged: Ember.observer('things.[0].name', function() { 
    this.get('messages').pushObject('[0] triggered'); 
    }), 

    bracketNameChanged: Ember.observer('things.[].name', function() { 
    this.get('messages').pushObject('[] triggered'); 
    }), 

Twiddle code sample

답변

0

정의 별칭은 things.firstObject.name의 속성을 계산.

firstObjName:Ember.computed.alias('things.firstObject.name'), 

관찰 firstObjName,

firstObjNameObserver:Ember.observer('firstObjName',function(){ 
    console.log('firstObjName observer'); 
    }), 
+0

이는 firstObject/lastObject를위한, 무엇을 사이에 아무것도 작동합니다? – myartsev

관련 문제