karma-handlebars-preprocessor

0.3.0 • Public • Published

karma-handlebars-preprocessor

Build Status npm version

Preprocessor to compile Handlebars on the fly.

Forked from hanachin's code (kudos!)

Works with Karma 0.9 or later.

For more information on Karma see the homepage.

Installation

  1. Install karma-handlebars-preprocessor plugin.
$ npm install karma-handlebars-preprocessor --save-dev
  1. Define it as a preprocessor in the config file
  preprocessors: {
    '**/*.hbs': 'handlebars'
  }

or pass through the command line

  $ karma start --preprocessors handlebars

Configuration

You can configure default behaviour in the handlebarsPreprocessor section of the config file. The following shows the default implementation:

// karma.conf.js
module.exports = function(config) {
  config.set({
    preprocessors: {
      '**/*.hbs': ['handlebars']
    },
 
    handlebarsPreprocessor: {
      // name of the variable to store the templates hash
      templates: "Handlebars.templates",
 
      // translates original file path to template name
      templateName: function(filepath) {
        return filepath.replace(/^.*\/([^\/]+)\.hbs$/, '$1');
      },
 
      // transforms original file path to path of the processed file
      transformPath: function(path) {
        return path.replace(/\.hbs$/, '.js');
      }
    }
  });
};

AMD Based Template Configuration

If you want to export your compiled templates as anonymous AMD modules, use the amd option in the config as shown below:

    handlebarsPreprocessor: {
      amd: true
    }

License

MIT License

Package Sidebar

Install

npm i karma-handlebars-preprocessor

Weekly Downloads

175

Version

0.3.0

License

MIT

Last publish

Collaborators

  • petrbela