Language/Nodejs

[Nodejs] ejs 버전에 따른 include 에러, 버전 업데이트에 따른 해결 방법

멱군 2020. 8. 21. 11:48

Node.js에서 EJS 템플릿 엔진을 사용하면 웹 애플리케이션 개발 과정을 더욱 효율적으로 만들 수 있습니다. 특히, 사이드바, 헤더, 풋터와 같이 반복되는 페이지 요소를 include 문법을 통해 한 곳에서 관리할 수 있는 기능은 개발자에게 큰 도움이 됩니다. 그러나 EJS 버전 업데이트로 인해 예전 방식의 include 문법이 에러를 발생시키는 경우가 생겼습니다. 이 글에서는 버전에 따른 include 문법의 차이와 해결 방법을 알아볼께요.

 

 

EJS 버전에 따른 include 문법 변경

EJS 2.x 버전

EJS 2.x 버전에서는 <% include /siderleft %>와 같은 방식으로 include를 사용할 수 있었습니다.

이는 상대적으로 간단한 문법으로, 다른 페이지 요소를 쉽게 포함시킬 수 있게 해줍니다.

EJS 3.x 버전

EJS 3.x 버전부터는 <%- include('siderleft') %>와 같이 사용해야 합니다.

새 문법은 괄호와 작은 따옴표를 사용하며, 이는 JavaScript 함수 호출과 유사한 형태입니다.

 

에러 해결 방법

1. 문법 확인

EJS의 버전을 확인하고 해당 버전에 맞는 include 문법을 사용해야 합니다.

2. 경로 지정

include의 경로는 프로젝트의 뷰 디렉토리를 기준으로 설정합니다.

경로 문제가 발생한다면, 파일 경로를 정확히 지정했는지 다시 확인해야 합니다.

3. 파라미터 전달

include 파일에 파라미터를 전달하고 싶을 때는 <%- include('파일명', {키: 값}) %> 형태로 작성합니다.

예를 들어, 사용자 정보를 전달하려면 <%- include('siderleft', {user: "user"}) %>와 같이 사용합니다.

 

추가 정보

EJS 문서 확인

문법 변경이나 기타 변경 사항은 EJS의 공식 문서에서 가장 정확한 정보를 얻을 수 있습니다.

 

ejs

Embedded JavaScript templates. Latest version: 3.1.9, last published: a year ago. Start using ejs in your project by running `npm i ejs`. There are 13323 other projects in the npm registry using ejs.

www.npmjs.com

 

환경 설정

프로젝트의 package.json 파일에서 EJS의 버전을 확인하고 필요에 따라 업그레이드하거나 다운그레이드할 수 있습니다.

 

결론

EJS 템플릿 엔진의 버전 업데이트로 인한 include 문법 변경은 처음에 혼란을 줄 수 있지만, 문법을 올바르게 적용하면 기존과 동일하게 효율적으로 페이지를 구성할 수 있습니다.

템플릿 엔진을 사용할 때는 업데이트를 체크하면서 사용해야 할거 같아요.

EJS를 포함한 다양한 기술 문서를 주기적으로 확인하는 습관을 기르는 것이 좋겠네요.

 

함께보면 좋은글

 

Node.js에서 Include 파일에 값 전달하는 방법

Node.js 개발 과정에서 효율적인 코드 관리를 위해 헤더(header)와 푸터(footer)와 같은 공통 요소를 별도의 파일로 분리하여 관리하는 경우가 많습니다. 특히, 템플릿 엔진을 사용할 때, 이러한 공통

devit.koreacreatorfesta.com