>  기사  >  웹 프론트엔드  >  nodejs 템플릿은 무엇을 합니까?

nodejs 템플릿은 무엇을 합니까?

王林
王林원래의
2023-05-08 12:30:37485검색

Node.js 템플릿은 웹 애플리케이션을 만드는 데 필수적인 부분으로, 개발자가 HTML, CSS 및 JavaScript를 더 쉽게 관리하고 렌더링할 수 있도록 해줍니다. Node.js 템플릿의 목적은 데이터를 애플리케이션의 처리 로직과 인터페이스에서 분리하는 것입니다. 이러한 분리를 통해 개발자는 코드를 더 잘 관리하고 변경 및 유지 관리를 더 쉽게 할 수 있습니다. 이 기사에서는 Node.js 템플릿을 자세히 살펴보고 그 용도와 이를 사용하여 웹 애플리케이션을 구축하는 방법을 살펴보겠습니다.

Node.js 템플릿이란 무엇인가요?

Node.js 템플릿은 웹 애플리케이션 페이지에 렌더링하기 전에 코드에서 데이터를 사전 처리할 수 있습니다. Node.js 템플릿은 일반적으로 특정 기호나 구문을 통해 자리 표시자로 대체되는 HTML, CSS 및 JavaScript 코드를 포함하는 문자열입니다. 자리 표시자는 특정 구문 표시자(보통 중괄호, 보다 큼 기호, 백분율 기호 등의 기호)로 구성됩니다. 런타임 시 자리 표시자는 실제 데이터로 대체되고 최종 페이지 콘텐츠가 생성됩니다.

Node.js 템플릿이 필요한 이유는 무엇입니까?

기존 웹 개발에서는 애플리케이션의 비즈니스 로직을 HTML 및 CSS와 혼합하면 코드가 복잡해질 수 있습니다. 애플리케이션에 HTML/CSS의 수정 또는 재구성이 필요한 경우 코드 베이스 전반에 걸쳐 수정이 이루어져야 할 수 있으며, 이로 인해 버그가 발생하고 코드 유지 관리가 어려워질 수 있습니다. 따라서 템플릿 엔진을 사용하면 데이터와 페이지 코드를 분리할 수 있어 코드 확장 및 유지 관리가 더 쉬워집니다.

Node.js 템플릿 사용

Node.js 템플릿 엔진에는 다양한 옵션이 있으며 각 옵션에는 고유한 구문과 기능이 있습니다. 다음은 가장 인기 있는 Node.js 템플릿 엔진과 그 사용법입니다.

  1. EJS

EJS(Embedded JavaScript)는 JavaScript를 사용하여 HTML 코드에 JavaScript 코드를 삽입할 수 있게 해주는 JavaScript 템플릿 엔진입니다. EJS는 데이터베이스 쿼리, 계산 등과 같은 다른 기능을 통합하기 위해 JavaScript를 사용할 수 있으므로 애플리케이션 인터페이스를 처리할 때 특히 유용합니다.

EJS를 사용하면 JavaScript와 유사한 함수 호출을 사용하여 HTML을 출력할 수 있습니다.

const ejs = require('ejs');
const template = `<h1><%= message %></h1>`;
const data = {message: 'Hello EJS'};
const html = ejs.render(template, data);
console.log(html);

이 예에서는 일부 텍스트 데이터를 템플릿 문자열에 정의된 변수로 바꿉니다.

  1. Handlebars

Handlebars는 HTML 조각을 생성할 수 있는 Mustache 템플릿을 기반으로 하는 JavaScript 템플릿 엔진입니다. 핸들바에서는 {{}} 기호와 # 기호를 사용하여 if 및 for 루프와 같은 변수 및 제어 구조를 참조할 수 있습니다.

다음은 기사 목록 작성을 위한 핸들바 템플릿입니다.

<ul>
 {{ #each articles }}
  <li><a href="{{ url }}">{{ title }}</a></li>
 {{ /each }}
</ul>

이 예에서는 #each를 사용하여 기사 배열의 각 기사에 해당하고 기사의 제목과 URL을 출력합니다.

  1. Jade(현재 Pug)

Jade(현재 Pug)는 HAML과 유사한 템플릿 엔진입니다. HTML 구문을 단순화하고 코드를 더욱 깔끔하게 만들기 때문에 웹 애플리케이션의 신속한 개발에 이상적입니다.

다음은 Pug로 작성한 간단한 폼 페이지입니다.

form(action="/submit-form", method="post")
  label(for="id-email") Email:
  input(name="email", id="id-email", type="email", required)
  br
  label(for="id-password") Password:
  input(name="password", id="id-password", type="password", required)
  br
  button(type="submit") Submit

이 예에서는 들여쓰기를 사용하여 계층 구조를 나타내는 방법을 볼 수 있습니다.

요약

템플릿 엔진은 HTML, CSS 및 JavaScript를 쉽게 관리하고 렌더링할 수 있기 때문에 웹 애플리케이션 구축에 중요한 부분입니다. 템플릿 엔진을 사용하면 애플리케이션의 로직이 인터페이스에서 분리되어 코드를 더 쉽게 작성하고 유지 관리할 수 있습니다. 선택할 수 있는 다양한 Node.js 템플릿 엔진이 있으며 각 엔진에는 고유한 구문과 기능이 있으며 개발자는 필요에 따라 그 중 하나를 선택할 수 있습니다.

위 내용은 nodejs 템플릿은 무엇을 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.