ejs-tpl-loader

1.0.5 • Public • Published

ejs template loader for webpack

EJS (Underscore/LoDash Templates) loader for webpack. Uses lodash template function to compile templates.

If you are looking for the loader which uses EJS templating engine, there is ejs-compiled-loader

Installation

npm install ejs-tpl-loader

Usage

Documentation: Using loaders

var template = require("ejs-tpl-loader!./file.ejs");
// => returns the template function compiled with undesrcore (lodash) templating engine.
 
// And then use it somewhere in your code
template(data) // Pass object with data

You also should provide a global _ variable with the lodash/underscore runtime. You can do it with the following webpack plugin: https://github.com/webpack/docs/wiki/list-of-plugins#provideplugin

plugins: [
    new webpack.ProvidePlugin({
        _: "underscore"
    })
]

Compiler options

Query parameters allows to pass options for template compiller.

Config example:

module.exports = {
  module: {
    loaders: [
      { test: /\.ejs$/, loader: "ejs-tpl?variable=data" },
    ]
  }
};

is equivalent to

var template = _.template('<%= template %>', {variable: 'data'}); 

Also extra options may be passed to load static files, see html-loader. This way any static files linked in templates will be included in final webpack bundle. Example:

module.exports = {
  module: {
    loaders: [
      { test: /\.ejs$/, loader: "ejs-tpl?variable=data&attrs[]=img:src&attrs[]=source:src" },
    ]
  }
};

Tests

Run unit tests:

npm install
npm test

License

MIT (http://www.opensource.org/licenses/mit-license.php)

Package Sidebar

Install

npm i ejs-tpl-loader

Weekly Downloads

0

Version

1.0.5

License

MIT

Last publish

Collaborators

  • dikuzikov