웹/웹프로그래밍
핸들바 함수 for문 / if문/eq 같은지비교하기/servar 변수선언/배열 인덱스로 사용가능하게하기
은은하게미친자
2024. 10. 21. 15:01
728x90
for 문 만들기
Handlebars.registerHelper('for', function(from, to, options) {
let result = '';
for (let i = from; i <= to; i++) {
result += options.fn(i);
}
return result;
});
<ul>
{{#for 0 10}}
<li>{{this}}</li>
{{/for}}
</ul>
<ul>
<li>0</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
</ul>
if 문
{{#if isUserLoggedIn}}
<p>Welcome back, user!</p>
{{else}}
<p>Please log in.</p>
{{/if}}
같은지 비교하기
Handlebars.registerHelper('setVar', function(varName, varValue, options) {
if (!this._vars) {
this._vars = {};
}
this._vars[varName] = varValue;
return '';
});
{{#eq planeDepTime this}} selected {{/eq}}
변수 선언하기, setvar
Handlebars.registerHelper('setVar', function(varName, varValue, options) {
if (!this._vars) {
this._vars = {};
}
this._vars[varName] = varValue;
return '';
});
{{setVar "greeting" "Hello, world!"}}
<p>{{_vars.greeting}}</p>
<p>Hello, world!</p>
배열
인덱스로 출력 가능하게하기
Handlebars.registerHelper('getIndex', function(array, index) {
return array[index];
});
<span class="lable"><input type="checkbox" name="cbWeek_1" id="daily1" {{getIndex weeksa 0}} ><label for="daily1">월</label></span>
728x90