
Compiles dust templates and exports the compiled functions, allowing for rendering of the templates in a browser environment.
Usage
Documentation: Using loaders
var template = require('dust!./file.dust');
Recommended config
module.exports = {
module: {
loaders: [
{
test: /\.dust$/,
loader: 'dust-loader'
}
]
},
plugins: [
new webpack.ProvidePlugin({
dust: 'dustjs-linkedin'
})
],
};
Then you only need to write: require('./file.dust')
You can also preserve the whitespace in your template with the following loader config:
{
test: /\.dust$/,
use: {
loader: 'dust-loader',
options: 'preserveWhitespace'
}
}
or
{
test: /\.dust$/,
use: {
loader: 'dust-loader',
options: {
preserveWhitespace: true
}
}
}
rootDir
Sets the root directory for your dust templates. The rootDir string will be removed from the beginning of the dust module path before it is turned into the template name.
{
test: /\.dust$/,
use: {
loader: 'dust-loader',
options: {
rootDir: 'src/app/templates'
}
}
}
Rendering a template
You will need to bundle the dust core in your pack in order to render the compiled templates.
var tpl = require('./views/foo/bar.tpl');
dust.render('views/foo/bar', context, function(err, result){
});
dust.render(tpl, context, function(err, result){
});
License
MIT (http://www.opensource.org/licenses/mit-license.php)