StrongLoop의 Express 및 Node.js 교육

StrongLoop / IBM에 의해 제공이 번역.

이 문서는 영문판 문서에 비해 더 오래된 버전일 수도 있습니다. 최신 업데이트를 확인하려면 영문판 문서를 참조하십시오.

Express와 함께 템플리트 엔진을 사용

Express가 템플리트를 렌더링하려면 다음과 같은 애플리케이션 설정이 필요합니다.

이후 그에 맞는 템플리트 엔진 npm 패키지를 다음과 같이 설치하십시오.


$ npm install jade --save

Express와 호환되는 템플리트 엔진(예: Jade)은 __express(filePath, options, callback)라는 이름의 함수를 내보내며, 이 함수는 res.render() 함수에 의해 호출되어 템플리트 코드를 렌더링합니다.

일부 템플리트 엔진은 이러한 방식을 따르지 않습니다. Consolidate.js 라이브러리는 널리 이용되고 있는 모든 Node.js 템플리트 엔진을 맵핑함으로써 이러한 방식을 따르므로 Express 내에서 완벽하게 작동합니다.

보기 엔진을 설정한 후에는 앱에서 엔진을 지정하거나 템플리트 엔진 모듈을 로드할 필요가 없으며, Express는 아래에 표시된 것과 같이 내부적으로 모듈을 로드합니다(위의 예에 대한 코드).


app.set('view engine', 'jade');

다음의 내용이 입력된 index.jade라는 이름의 Jade 템플리트를 views 디렉토리에 작성하십시오.


html
  head
    title!= title
  body
    h1!= message

이후 index.jade 파일을 렌더링할 라우트를 작성하십시오. view engine 특성이 설정되어 있지 않은 경우에는 view 파일의 확장자를 지정해야 합니다. 해당 특성이 설정되어 있는 경우에는 확장자를 생략할 수 있습니다.


app.get('/', function (req, res) {
  res.render('index', { title: 'Hey', message: 'Hello there!'});
});

홈 페이지에 대한 요청을 실행할 때, index.jade 파일은 HTML 형식으로 렌더링됩니다.

Express에서 템플리트 엔진이 작동하는 방식에 대한 자세한 내용을 확인하려면 “Express용 템플리트 엔진 개발”을 참조하십시오.