2016-06-15 2 views
1

핸들 막대에 새로 추가 한 도우미를 등록 했으므로 간단한 작업 인 것, 즉 핸들 바에 도우미를 전달하는 방법을 생각할 수 없습니다.핸들을 사용자 정의 도우미에 전달

Handlebars.registerHelper('or', function (v1, v2) { 
    return (v1 || v2) ? options.fn(this) : options.inverse(this); 
} 

을 그리고 그것을 사용하는 경우 :

의가 있다고 가정 해 봅시다 물론

{{#conditional @index this.warranty_id !== "DEFAULT_FACTORY" }} 

실패, 나는 그것이 작동되도록하는 방법을 알아낼 수 없습니다. 내가 필요한 것은 전달되는 표현식이 도우미 내부의 v2 값으로 부울을 반환한다는 것입니다.

도움이 될 것입니다.

+0

엠버 어떤 버전의 당신에 있습니까? [Ember.Helper.helper] (http://emberjs.com/api/classes/Ember.Helper.html#method_helper) –

+0

@ Kitler가 답을 알려 주셔서 감사합니다. 아니오 ember, 핸들 바 노드 모듈에 감사드립니다. – Guillermo

+0

@Guillermo : 상자의 핸들 바에'! =='이 없습니다. 당신도 똑같이 맞춤 헬퍼를 작성해야합니다. –

답변

1

helper을 작성하여 !==을 확인한 다음 or 보조자 안에 하위 표현식으로 중첩해야합니다.

OR 도우미

Handlebars.registerHelper('or', function (v1, v2) { 
    return (v1 || v2) ? options.fn(this) : options.inverse(this); 
} 

!== 도우미

Handlebars.registerHelper('ne', function (v1, v2) { 
    return (v1 !== v2); 
} 

다음 템플릿

:

{{#or @index (ne this.warranty_id "DEFAULT_FACTORY")}} 
관련 문제