3
블록 도우미 #each
으로리스트를 만들지 만, 각 루프 내에서 변수를 전달할 수는 없습니다.핸들 바 : 각각 내부의 부분 변수로 전달
{{#each a-z.letters}}
{{this}} /*[1]*/
<li class="list-inline__item">
{{>button btn="btn-text" addClass='-large' link='letter/{{this}}' label='{{this}}'/*[2]*/}}
</li>
{{/each}}
부분 링크 :
<a href="{{link}}" class="btn-text {{addClass}}">{{label}}</a>
출력은 : I 원한다면
는<ul class="list-inline">
A /*[1]*/
<li class="list-inline__item">
<a href="letter/{{this}}/*[2]*/" class="btn-text -large">{{this}}/*[2]*/</a>
</li>
....
[1] 다만 테스트하고
작동[2] 합격 부분적으로는 내 매개 변수를 렌더링하지 않습니다.
업데이트
이렇게하면 내 href를 URL로 확장 할 수 있습니다. 부분
Handlebars.registerHelper('updateLink', function(options){
var insertAt = "href=";
var content = options.fn(this).trim();
var pos = content.indexOf(insertAt) + insertAt.length+1; // +1 for the quotation marks
content = content.slice(0, pos) + options.hash.url + content.slice(pos, content.length);
return new Handlebars.SafeString(content);
});
링크 : 당신은 중괄호 세트 안에 이미있는 경우
{{#updateLink url="letters/"}}
{{>button link=this label=this btn="btn-text" addClass='-large'}}
{{/updateLink}}