Skip to content

electerious/rosid-handler-ejs

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

rosid-handler-ejs

Travis Build Status Coverage Status Dependencies Greenkeeper badge

A function that loads an EJS file and transforms it to HTML.

Install

npm install rosid-handler-ejs

Usage

API

const handler = require('rosid-handler-ejs')

handler('index.ejs').then((data) => {})
handler('index.xml').then((data) => {})
handler('index.ejs', { optimize: true }).then((data) => {})
handler('index.ejs', { data: { key: 'value' } }).then((data) => {})
handler('index.ejs', { data: 'data.json' }).then((data) => {})

Rosid

Add the following object to your rosidfile.json, rosidfile.js or routes array. rosid-handler-ejs will transform all matching EJS files in your source folder to HTML.

{
	"name"    : "EJS",
	"path"    : "[^_]*.{html,ejs}*",
	"handler" : "rosid-handler-ejs"
}
<!-- index.ejs -->
<h1>Hello <%= 'World' %></h1>
<!-- index.html (output) -->
<h1>Hello World</h1>

Parameters

  • filePath {String} Path to file.
  • opts {?Object} Options.
    • optimize {?Boolean} - Optimize output. Defaults to false.
    • data {?Object|String} - Data used to render the template. Defaults to {}.
    • localOverwrites {?Boolean} - Enable or disable custom data per file. Defaults to true.

Returns

  • {Promise<String|Buffer>} The transformed file content.

Miscellaneous

Data

The data in opts.data will be used to render your template. opts.data can either be an object (the data) or a string (path to data file). rosid-handler-ejs tries to require the path when a string is specified instead of an object. The path must be absolute or relative to the current working directory.

Custom data per file

Create a file with the name filename.data.json or filename.data.js along your filename.ejs to add or overwrite data from opts.data. You can disable this behaviour with the localOverwrites option.

Environment

rosid-handler-ejs passes a variable called environment to your template. environment is prod when opts.optimize is true and dev when opts.optimize is false.

About

Load EJS templates and render them.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published