Skip to content

Latest commit

 

History

History
90 lines (62 loc) · 1.92 KB

README.md

File metadata and controls

90 lines (62 loc) · 1.92 KB

UNMAINTAINED

This project is no longer being maintained. It's suggested that an alternative be used instead.

gulp-html-compile

Compile static ( no logic ) HTML templates into javascript files

Synopsis

This plugin is heavily inspired by Emanuele Ingrosso's gulp plugin which was itself inspired by Sindre Sorhus's gulp-nunjucks plugin.

Install

Install with npm

npm install gulp-html-compile --save-dev

Example

template

<h1 class="my-header">Welcome to my awesome site!</h1>

gulpfile

var gulp = require( 'gulp' ),
    template = require( 'gulp-html-compile' ),
    concat = require( 'gulp-concat' ),
    wrap = require( 'gulp-wrap' );

gulp.task( 'templates', function() {
    gulp.src( './templates/**/*.html' )
        .pipe( template({
            name: function( file ) {
                return file.relative.split( '.' )[ 0 ];
            },
            namespace: 'myTemplates'
        }))
        .pipe( concat( 'myTemplates.js' ))
        .pipe( wrap( 'module.exports = window["myTemplates"]'))
        .pipe( gulp.dest( './js/'));
});

API

template( options )

options

Type: object

options.name

Type: string Default: Relative template path Example: templates/header.html

You can override the default behavior by supplying a function which gets the current File object and is expected to return the name.

{
    name: function( file ) {
        return file.relative.split( '.' )[ 0 ];
    }
}
options.namespace

Type: 'string' Default: 'templates'

The namespace in which the precompiled templates will be assigned.

{
    namespace: 'MyCoolTemplates'
}

License

MIT