2012-07-17 3 views
2

이 코드의 "fullName"기능이 두 번 실행되는 이유는 무엇입니까? 나중에 구글 크롬 콘솔에서emberjs - 두 번 속성 발생

Person = Ember.Object.extend({ 
    // these will be supplied by `create` 
    firstName: null, 
    lastName: null, 
    fullName: function() { 
    console.log('Full name function...'); 
    var firstName = this.get('firstName'); 
    var lastName = this.get('lastName'); 
    return firstName + ' ' + lastName; 
    }.property('firstName', 'lastName') 
}); 

App.tom = Person.create({ 
    firstName: "Tom", 
    lastName: "Dale" 
}); 

App.UsersView = Ember.View.create({ 
    templateName: 'users', 
    users: [App.tom] 
}); 

:

App.tom.set('firstName', 'John') 

이 출력은 두 번 로그인합니다.

+0

텍스트 '전체 이름 기능'이 두 번 인쇄됩니다. – mprcela

답변

2

버그 같이 참 (설명하기 JSFiddle 추가 : http://jsfiddle.net/MikeAski/GRvgt/) 같다보기 다시 렌더링되는

... 및 계산 된 속성이 아직 캐싱되지. :-(

+0

ember-latest로 업데이트하면이 문제가 해결됩니다. @see http://jsfiddle.net/Sly7/vpHth/ –

+0

감사합니다. 버그입니다. 방금 다시 테스트했는데 stable 버전 (현재 0.9.8.1)에서는 작동하지 않지만 ember-latest 버전에서는 정상적으로 작동합니다. – mprcela