An Underscore.js template loader for Webpack that works with strict mode. Underscore templates don't work with strict mode by default because they use the with(data)
function to give you access to your data variables. This plugin works by prefixing each variable in your templates with data.whatever
so {{ name }}
becomes {{ data.name }}
.
Once you have the Underscore package installed, you can run:
npm install underscore-template-strict-loader
underscore-template-strict-loader is MIT licenced.
module.exports = {
module: {
test: /\.jst/,
loader: 'underscore-template-strict-loader',
query: {
templateSettings: {
evaluate: /\{\[([\s\S]+?)\]\}/,
escape: /\{\{([\s\S]+?)\}\}/,
interpolate: /\{\!([\s\S]+?)\!\}/
},
// use dataObjName option to define the name of the data object
// for templates. It's "data" by default.
dataObjName: 'templateData',
// use the globals option to define variables that
// should not be prefixed
globals: ['$', 'jQuery'],
// Add this only if you want to prefix the template with
// an HTML comment with the path to the file for debugging.
addFilenameComment: true
}
}
};
This is being used in Beta at SpyFu