ejs-addon

    1.2.0 • Public • Published

    ejs-addon

    Addon for EJS 2.x and Express 4.x

    NPM version npm download David deps

    Install

    npm i ejs-addon -S
    

    Usage

    Explains the usages of ejs-addon, you can view detail usages in example.

    layout

    layout refers to ejs-mate

    • Declare layout
    <!DOCTYPE html>
    <head>
        <title>ejs-addon</title>
    </head>
    <body>
    <%- body %>
    </body>
    • Use layout
    <% layout('default') %>
     
    <h1>Title</h1>
    • Working with Express
    const app = require('express')();
    const engine = require('ejs-addon');
     
    app.engine('ejs', engine);
     
    app.set('views', path.join(__dirname, 'views'));
    app.set('view engine', 'ejs');

    loader

    • Use loader
    <% loader([
      '/path/to/foo.css',
      '/path/to/bar.js'
    ]) %>
    • Declare placeholder in layout

    ejs-addon use <%- css %> and <%- js %>, put them in the right place.

    <!DOCTYPE html>
    <head>
        <title>ejs-addon</title>
        <%- css %>
    </head>
    <body>
    <%- body %>
    <%- js %>
    </body>

    More about loader

    loader support adding prefix for assets.

    For example, if you are using CDN for your application in production, follow these steps:

    1. Ensure process.env.NODE_ENV === 'productoin'
    2. Use the following lines of codes in your app.js:
    // Pulic folder
    app.set('public path', path.join(__dirname, 'public'));
    // Declare CDN url pattern
    app.set('public pattern', 'http://yourcdn.com/@version/@path');

    Things about CDN pattern:

    • @version would be replaced with the file's modified time
    • @path would be replaced with the files relative file path as you declared in loader()

    Example

    See example

    Contribute

    Fire an issue

    License

    The MIT License

    Install

    npm i ejs-addon

    DownloadsWeekly Downloads

    58

    Version

    1.2.0

    License

    MIT

    Last publish

    Collaborators

    • fantasyshao