Handlebars template bundle rollup plugin
MIT License
Minimal handlebars template bundle rollup plugin based on rollup-plugin-handlebars-plus
Via Yarn
yarn add rollup-plugin-hbs --save-dev
Via NPM
npm install rollup-plugin-hbs --save-dev
// rollup.config.js
import hbs from 'rollup-plugin-hbs';
export default {
entry: 'entry.js',
dest: 'bundle.js',
plugins: [
hbs({
handlebars: {
// The module ID of the Handlebars runtime, exporting `Handlebars` as `default`.
// As a shortcut, you can pass this as the value of `handlebars` above.
// See the "Handlebars" section below.
id: 'handlebars', // Default: the path of Handlebars' CJS definition within this module
// Options to pass to Handlebars' `parse` and `precompile` methods.
options: {
// Whether to generate sourcemaps for the templates
sourceMap: true // Default: true
},
// Whether to remove newline and whitespace characters from compiled output.
optimize: true
},
// In case you want to compile files with other extensions.
templateExtension: '.html', // Default: '.hbs'
// A function that can determine whether or not a template is a partial.
isPartial: (name) => name.startsWith('_') // Default: as at left
})
]
}
{{! src/client/js/views/_messageBody.html }}
<p>{{message}}</p>
{{! src/client/js/views/message.html }}
<div>{{> _messageBody }}</div>
// main.js
import '_messageBody.html';
import MessageTemplate from 'message.html';
$('body').append(MessageTemplate({ message: 'Hello world!' }));
This software is licensed under the MIT License