Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

component-render

Build Status

Render html file from template file for component

Installation

With Component previously installed:

    $ npm install -g component-render

Usage


  Usage: component-render [options] <template>

  Options:

    -V, --version              
    -h, --help                 output usage information
    -l, --local <json>         local <json> file
    -o, --out <path>           output html file <path>
    -u, --use <name>           use the given render <name> plugin

Example

    # redner html file from template file
    $ component render simple.jade

    # render html file from template file with local json file
    $ component render -l user.json user.jade

    # render html file to output path
    $ component render -o ./static/html/simple.html simple.jade

    # render html file with plugin
    $ component render -u component-render-hogan -l user.json user.mustache

Template engine

Use Jade template engine. Hogan, EJS, and other template engine, you can support with plugin.

How to create plugin

You need to implement below function.

  • Function have template, program and fn arugments.
  • template: a template file path.
  • program: commander object.
  • fn: a callback function. specify error, html to arguments.

Plugin example

var hogan = require('hogan.js');
var path = require('path');
var fs = require('fs');

module.exports = function (template, program, fn) {
  var local = {};
  if (program.local) {
    var resolve_path = path.resolve(program.local);
    local = fs.existsSync(resolve_path) ? require(resolve_path) : require(resolve_path + '.json');
  }
  fs.readFile(template, { encoding: 'utf8' }, function (err, data) {
    if (err) { return fn(err); }
    var renderer = hogan.compile(data);
    var html = renderer.render(local);
    fn(null, html);
  });
};

License

MIT license.

See the LICENSE.

About

Render html file from template file for component

Resources

License

Packages

No packages published