gulp-underscore-template

gulp underscore template pre-compiler

Usage no npm install needed!

<script type="module">
  import gulpUnderscoreTemplate from 'https://cdn.skypack.dev/gulp-underscore-template';
</script>

README

gulp-underscore-template

This plugin compiles a set of underscore template files into one commonjs module.

Usage

In your gulpfile simply pipe every html file into this plugin, then concat them.

It is suggested to minify your html before compiling them.

var gulp = require('gulp');
var concat = require('gulp-concat');
var htmlmin = require('gulp-htmlmin');
var template = require('gulp-underscore-template');
gulp.src('./templates/*.html')
    .pipe(htmlmin({
        collapseWhitespace: true,
        conservativeCollapse: true
    }))
    .pipe(template())
    .pipe(concat('templates.js'))
    .pipe(gulp.dest('./lib/'))

Suggest your file structure is as below:

templates
  |- some-page.html
  |- another-page.html

Then use the compiled template in your code:

var templates = require('./lib/templates');
var tpl1 = templates['some-page'];
var resultHtml = tpl1({ data: 123 });

For template syntax please see underscore template docs;