2017-02-09 1 views
2

템플릿의 컨트롤러 속성을 반복하는 방법이 완전히 명확하지 않습니다. 나는 방법에 발견 :템플릿의 컨트롤러 속성을 반복하는 올바른 방법은 무엇입니까?

{{#each-in this as |key value|}} 
    {{key}}: {{value}} 
{{/each-in}} 

과 작품의 종류,하지만 속성 외에도 몇 가지 내부 기능을 출력 것 :

import Ember from 'ember'; 

export default Ember.Controller.extend({ 

    queryParams: [ 
     'q', 
     'search_page' 
    ], 
    q: 'shirt', 
    search_page: 3 

}); 

:

q: shirt 
search_page: 3 
_qpDelegate: function (prop, value) { var qp = map[prop]; _this._qpChanged(prop, value, qp); return _this._activeQPChanged(map[prop], value); } 

내 컨트롤러의 모습 함수를 반복하고 제외하는 방법이 있습니까? 당신이 디버깅 목적으로 만이 작업을 수행 할 필요가 나타납니다 때문에

+0

당신에게 필요한 것은 무엇입니까? 한 가지 간단한 해결책은 맞춤 헬퍼를 사용하여 기능을 필터링하는 것입니다. {{key}} : {{value}} {{if if}} {{/}} {{key} each-in}} ' – nem035

+0

쿼리 매개 변수 API는 키/값을 컨트롤러 속성에 저장합니다. 지금은 속성을 지정하지 않고도 모두 인쇄하여 속성 자체에 대한 다양한 동작을 테스트하려고합니다. – tarponjargon

+0

이 목적으로보기에서'{{debugger}} '를 사용해 보셨습니까? 그런 다음 콘솔 내에서 속성 값을 검사 할 수 있습니다. –

답변

1

, 하나 개의 가능한 솔루션은 기능을 필터링 할 사용자 지정 도우미를 작성하는 것입니다 (또는 당신이 원하는 어떤 다른) :

// helpers/debug-filter.js 
export function debugFilter([value]) { 
    return Ember.typeOf(value) !== 'function'; 
} 

export default Ember.Helper.helper(formatCurrency); 

컨트롤러의 템플릿

{{#each-in this as |key value|}} 
    {{#if (debug-filter value)}} 
    {{key}}: {{value}} 
    {{/if}} 
{{/each-in}} 
+1

정말 고마워요! – tarponjargon

관련 문제