dust-loader
v1.1.0dust loader for webpack
Compiles dust templates and exports the compiled functions, allowing for rendering of the templates in a browser environment.
Usage
var template = require('dust!./file.dust');
// => returns file.dust compiled as template function
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');
// with dust <= 2.6
dust.render('views/foo/bar', context, function(err, result){
// result holds the rendered HTML code
});
// with dust >= 2.7
dust.render(tpl, context, function(err, result){
// result holds the rendered HTML code
});
License
npm i [email protected]
Metadata
- Unknown
- Whatever
- Valentin Agachi
- released 1/27/2017