Skip to content

ravener/polka-ejs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polka EJS

Adds ejs template engine support to polka

Install

npm install polka-ejs

Usage

const polka = require("polka");
const ejs = require("polka-ejs");

const app = polka();

app.use(ejs());

app.get("/", (req, res) => {
  res.render("index.ejs", { number: 5 });
});

app.listen(3000);

Create a views/index.ejs with the following

<html>
  <body>
    <h1>The Number is <%= number %></h1>
  </body>
</html>

Now visiting http://localhost:3000 will display the number 5 on the page!

Options

All options with their default values.

app.use(ejs({
  views: path.join(process.cwd(), "views"),
  cache: process.env.NODE_ENV === "production",
  contentType: "text/html",
  status: 200,
  ext: "ejs",
  options: {}
}));

Options can be overriden per call basis aswell

res.render("index", {
  views: path.join(__dirname, "secretViewsJustForThisRoute"),
  status: 500,
  contentType: "text/html",
  cache: false,
  ext: "html",
  options: {}
});

Few things to note

  • ext is used if the extension is not provided in the render call, i.e lets you make views/index.html and if ext is set to html just res.render("index") is enough.
  • Cache uses the simple in memory cache that comes with ejs to override this require() ejs and change the value of ejs.cache like examples in their readme
  • Could possibly work with other frameworks if they have a similar style of middleware but i haven't seen any.

License

MIT

About

Use ejs template engine in polka

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •