O EJS-Static-Converter permite converter um aplicativo de nó que usa o mecanismo de modelos EJS em um site HTML estático, independente de qualquer código do servidor. Isso é útil para converter aplicativos ou sites que foram feitos com node.js e EJs para facilitar o desenvolvimento, mas não requerem nenhum código do servidor em HTML estático.
O pacote também renderizará quaisquer EJs include
funções como abaixo no pacote HTML, como um cabeçalho, Navbar etc. no novo arquivo HTML.
// Include the header HTML which contains universal tags, references and other metadata.
< % - include ( "index-header.ejs" ) - % >
express
e ejs
são requisitos para este pacote funcionar, pois o site precisa ser configurado usando o motor de modelos
Instale as dependências necessárias:
npm install express ejs
Instale o pacote EJS-Static-Converter:
npm install -g ejs-static-converter
A pasta A /public
and /views
deve ser criada na pasta raiz do seu projeto para conter as visualizações .ejs e quaisquer arquivos públicos como CSS, imagens, etc.
Quando a função Converter for executada, todos os arquivos HTML serão criados dentro do diretório A /dist
na pasta raiz do projeto.
Crie um arquivo de configuração pages.config.js
em algum lugar do seu projeto para definir as páginas a serem convertidas. Aqui está um exemplo de armazenamento de arquivos de configuração na pasta 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" } }
] ;
Para converter seu site EJS em um site HTML estático, execute o seguinte comando em seu projeto ROOT:
ejs-static-converter ./src/utils/pages.config.js
Onde /src/utils/pages.config.js
é o caminho para o seu arquivo de configuração.
Aqui está um exemplo de como configurar seu servidor e usar o 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 ) ;
Se você não quiser fazer uma alteração ou melhoria, abra uma solicitação de tração ou sugira um recurso/bug como um problema.