2012-02-03 2 views
5

내 Ember.js 모델, 뷰 및 컨트롤러 클래스가 조금 자세하게 표시됩니다. 이 부분은 this.attr 대신 this.get('attr')으로 작성됩니다.Ember.js :이 문제를 피하려면 확인하십시오 .get ('attr')?

속성이 바인딩을 통하지 않고 직접 선언되는 한 항상 this.attr으로 작성하는 것이 좋습니까?

는 (I는 설정이 다른 문제라고 이해 - 당신은 항상 의존 속성과 템플릿을 업데이트하기 위해 this.set('attr', value)를 호출해야합니다.)

답변

5

IIRC, 당신은 당신이되지 않습니다 알고 개인 속성에 대해이 작업을 수행 할 수 있습니다 주목할 만한.

규칙은 개인 속성에 밑줄 (예 : _myProperty)을 붙이면 Ember에 바인딩하지 않도록 지시합니다.

.get()에 대한 문서를 참조하거나 너무 기울이면 source code을 확인하십시오.

+0

링크가 깨졌습니다. – rjhilgefort

3

속성을 관찰하거나 바인딩하는 경우 'this.attr'을 수행하지 않을 것입니다. get 명령은 관찰자와 바인딩이 트리거되는 연결 고리입니다.

+1

흥미 롭습니다. 어떤 상황에서 get 명령이 관찰자 또는 바인딩을 트리거할까요? 난 그냥 수동적으로 현재 값을 읽는 줄 알았는데. (나는 관측자와 바인딩을 유발하기 위해 세트를 얻지는 않았지만 기대하지 않았다.) –

+0

@JoLiss : 다른 속성 등에 의존하는 계산 된 속성을 읽으 려 할 때 그럴 것이라고 생각한다. –