koa-ejs ========= [![Build Status](https://secure.travis-ci.org/koajs/ejs.svg)](http://travis-ci.org/koajs/ejs) Koa ejs view render middleware. support all feature of [ejs](https://github.com/mde/ejs). [![NPM](https://nodei.co/npm/koa-ejs.png?downloads=true)](https://nodei.co/npm/koa-ejs/) ## Usage ### Example ```js const Koa = require('koa'); const render = require('koa-ejs'); const path = require('path'); const app = new Koa(); render(app, { root: path.join(__dirname, 'view'), layout: 'template', viewExt: 'html', cache: false, debug: true }); app.use(async function (ctx) { await ctx.render('user'); }); app.listen(7001); ``` Or you can checkout the [example](https://github.com/koajs/ejs/tree/master/example). ### settings * root: view root directory. * layout: global layout file, default is `layout`, set `false` to disable layout. * viewExt: view file extension (default `html`). * cache: cache compiled templates (default `true`). * debug: debug flag (default `false`). * delimiter: character to use with angle brackets for open / close (default `%`). * async: When true, EJS will use an async function for rendering. Depends on async/await support in the JS runtime. * outputFunctionName: Set to a string (e.g., 'echo' or 'print') for a function to print output inside scriptlet tags. ### Layouts `koa-ejs` supports layouts. The default layout file is `layout`. If you want to change default layout file, use `settings.layout`. Also you can specify layout by `options.layout` in `await ctx.render`. Also you can set `layout = false` to disable the layout. ```