Skip to content

datuhealth/gulp-html-compile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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