我注意到handlebars-loader
中Webpack
的行为异常。我有一个包含使用ES6语法编写的自定义帮助程序的文件夹。在我的最终输出中,这些助手没有被编译为ES5。
有人知道如何将自定义帮助程序编译为正确的ES5语法吗?
示例:
内部帮助程序目录(helpers/prettyPrint
)
import Handlebars from 'handlebars';
export default function (data) {
return new Handlebars.SafeString(`<pre>${JSON.stringify(data, null, 2)}</pre>`);
}
Webpack配置:
{
devtool: 'inline-source-map',
mode: 'development',
module: {
rules: [
{ test: /\.js$/, loader: 'babel-loader' },
{
test: /\.hbs$/,
exclude: /node_modules/,
loader: 'handlebars-loader',
options: {
helperDirs: [
path.join(__dirname, 'helpers')
],
precompileOptions: {
knownHelpersOnly: false
}
}
}
]
},
node: {
fs: 'empty'
},
resolve: {
alias: {
handlebars: 'handlebars/runtime'
}
}
}