API Reference

yunazzi·2024년 6월 20일

API Reference

01. The Handlebars runtime

✔️ Partial

• Handlebars.registerPartial(name, partial)
모든 템플릿에서 엑세스할수 있는 부분등록

1개 일때
Handlebars.registerPartial("foo", partial);2개이상 일때
Handlebars.registerPartial({ foo: partial, bar: partial });

• Handlebars.unregisterPartial(name)
이전에 등록된 부분을 등록해제

Handlebars.unregisterPartial("foo");

✔️ Helper (== 함수)

• Handlebars.registerHelper(name, helper)
모든 템플릿에서 접근가능한 헬퍼를 등록

1개 일때
Handlebars.registerHelper("foo", function() {});2개이상 일때
Handlebars.registerHelper({ foo: function() {}, bar: function() {} });

• Handlebars.unregisterHelper(name)
이전에 등록된 Helper를 등록취소

Handlebars.unregisterHelper("foo");

✔️ Other
• Handlebars.create()
고립된 핸들바 환경을 만듬

var OtherHandlebars = Handlebars.create();

여러환경에서 실행해야하는 템플릿은 Handlebars.template 각 환경에 대해 다시 컴파일하거나 재구성해야한다. partial에도 적용됨

• Handlebars.noConflict()
Handlebars변수를 이전값으로 복원시킴

var myHandlebars = Handlebars.noConflict();

이를 통해, 버전충돌X 여러버전의 라이브러리를 동시에 사용할 수 있음

02. Utility functions

- Helper utilities

사용자 정의를 구현할때 유용

• Handlebars.SafeString(string)
string 템플릿이 렌더링될때 탈출되는것을 방지한다.

new Handlebars.SafeString("<div>HTML Content!</div>");

• Handlebars.escapeExpression(string)

Handlebars.Utils.escapeExpression(string);

문자열값에 대한 HTML entity값 → &, <, >,", ',~를 바꿈
중괄호 삼중표현식을 제외한 모든 표현식의 출력은 이 메서드를 통해 전달된다.

• Handlebars.createFrame(data)
Block Helper가 하위데이터 개체를 만드는데 사용됨

if (options.data) {
  var data = Handlebars.createFrame(options.data);
  data.foo = "bar";
  options.data = data;
}

- General Utilities

• Handlebars.Utils.isEmpty(value)
주어진 값이 비어있는지 확인

Handlebars.Utils.isEmpty(value)

if/with helper가 실행흐름을 제어하는데 사용됨

• Handlebars.Utils.extend(obj, value)
value에 정의된 모든 key로 obj를 확장하는 간단한 유틸리티 방법

Handlebars.Utils.extend(foo, {bar: true})

• Handlebars.Utils.toString(obj)
일반적인 toString방법

• Handlebars.Utils.isArray(obj)
객체가 배열인지 결정함

• Handlebars.Utils.isFunction(obj)
객체가 기능인지 결정함

• Handlebars.log(level, message)
log helper에 사용된 logger
원하는 경우, 재정의될 수 있음

profile
뚝딱뚝딱 열심히 공부 중 이예요!

0개의 댓글