EJS-Static Converter를 사용하면 EJS 템플릿 엔진을 사용하는 노드 앱을 서버 코드와 무관하게 정적 HTML 사이트로 변환 할 수 있습니다. 이는 Node.js 및 EJS로 만들어진 앱 또는 웹 사이트를 쉽게 개발할 수 있지만 서버 측 코드가 정적 HTML로 필요하지 않습니다.
패키지는 또한 모든 EJS에 아래와 같은 기능이 헤더, Navbar 등과 같은 새로운 HTML 파일에 include
.
// Include the header HTML which contains universal tags, references and other metadata.
< % - include ( "index-header.ejs" ) - % >
express
and ejs
이 패키지가 작동하는 요구 사항입니다. 템플릿 엔진을 사용하여 사이트를 설정해야하므로
필요한 종속성 설치 :
npm install express ejs
EJS-Static Converter 패키지 설치 :
npm install -g ejs-static-converter
A /public
및 /views
폴더는 프로젝트의 루트 폴더에서 .ejs 뷰와 CSS, 이미지 등과 같은 공개 파일을 포함하도록 만들어야합니다.
변환 함수가 실행되면 모든 HTML 파일이 프로젝트의 루트 폴더의 A /dist
디렉토리 내부에서 생성됩니다.
구성 파일 페이지를 작성하십시오 pages.config.js
프로젝트의 Somewhere는 변환 할 페이지를 정의합니다. 다음은 src/utils
폴더의 예제 구성 파일 저장소입니다.
// src/utils/pages.config.js
// Add pages to convert here:
module . exports = [
{ template : 'index.ejs' , output : 'index.html' , data : { title : "Home" } } ,
{ template : 'pages/page-2.ejs' , output : 'page-2/index.html' , data : { title : "Page 2" } } ,
{ template : 'pages/page-3.ejs' , output : 'page-3/index.html' , data : { title : "Page 3" } }
] ;
EJS 사이트를 정적 HTML 사이트로 변환하려면 프로젝트 루트에서 다음 명령을 실행하십시오.
ejs-static-converter ./src/utils/pages.config.js
여기서 /src/utils/pages.config.js
는 구성 파일의 경로입니다.
다음은 서버를 설정하고 EJS-Static Converter를 사용하는 방법의 예입니다.
// src/server.js
// Main dependencies
const express = require ( "express" ) ;
const app = express ( ) ;
const server = require ( "http" ) . Server ( app ) ;
// Declare ejs, JSON formatting and set static files folder.
app . set ( "view engine" , "ejs" ) ;
app . set ( "json spaces" , 2 ) ;
app . use ( express . static ( "public" ) ) ;
// Home
app . get ( "/" , ( req , res ) => {
res . render ( "index" , {
title : "Home" ,
} ) ;
} ) ;
// Page 2
app . get ( "/page-2" , ( req , res ) => {
res . render ( "pages/page-2" , {
title : "Page 2" ,
} ) ;
} ) ;
// Page 3
app . get ( "/page-3" , ( req , res ) => {
res . render ( "pages/page-3" , {
title : "Page 3" ,
} ) ;
} ) ;
// Initialise the server on port 3000.
server . listen ( 2000 ) ;
변경 또는 개선을하지 않으려면 풀 요청을 열거나 기능/버그를 문제로 제안하십시오.