Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A handlebars template loader for webpack

branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.md

handlebars-loader

A handlebars template loader for webpack.

General Usage

webpack configuration

{
  ...
  module: {
    loaders: [
      ...
      { test: /\.handlebars$/, loader: "handlebars-loader" }
    ]
  }
}

Your JS making use of the templates

var template = require("./file.handlebars");
// => returns file.handlebars content as a template function

Details

The loader resolves partials and helpers automatically. They are looked up relative to the current directory or as a module if you prefix with $.

A file "/folder/file.handlebars".
{{> partial}} will reference "/folder/partial.handlebars".
{{> ../partial}} will reference "/partial.handlebars".
{{> $module/partial}} will reference "/folder/node_modules/module/partial.handlebars".
{{helper}} will reference the helper "/folder/helper.js" if this file exists.
{{../helper}} {{$module/helper}} are resolved similarly to partials.

Two query options are supported:

  • helperDirs: Defines additional directories to be searched for helpers. Allows helpers to be defined in a directory and used globally without relative paths.
  • extensions: Searches for templates with alternate extensions. Defaults are .handlebars, .hbs, and '' (no extension).

See webpack documentation for more information regarding loaders.

Full example

See example folder in this repo. The example is now fully runnable and demonstrates a number of concepts (using partials and helpers) -- just run webpack in that directory to produce dist/bundle.js in the same folder.

License

MIT (http://www.opensource.org/licenses/mit-license)

Something went wrong with that request. Please try again.