我想将我的数据对象传递给玉文件,但这是不可能的我的jade-loader
:
{
test: /\.jade$/,
loader: "jade",
query: {
pretty: true,
locals: {
name: "Georg"
}
}
Run Code Online (Sandbox Code Playgroud)
}
plugins
:
plugins: [
new HtmlWebpackPlugin({
filename: "index.html",
template: "./src/jade/index.jade"
})]
Run Code Online (Sandbox Code Playgroud)
index.jade
:
span=locals.name
Run Code Online (Sandbox Code Playgroud)
我运行 webpack 并得到这个index.html
:
<span></span>
Run Code Online (Sandbox Code Playgroud)
我的变量name
没有通过。为什么?如何解决?
小智 3
您可以将自定义属性传递给HtmlWebpackPlugin
选项并在 pug 模板中使用它们(请参阅文档中的htmlWebpackPlugin.options)。它适用于最新版本的HtmlWebpackPlugin
和pug-loader
webpack 2。无法确认它是否适用于以前的版本,但我相信它可以。
pug
规则:
{
test: /\.pug$/,
loader: 'pug-loader',
options: {
// Use `self` namespace to hold the locals
// Not really necessary
self: true,
},
}
Run Code Online (Sandbox Code Playgroud)
HtmlWebpackPlugin
选项:
{
filename: 'index.html',
template: 'src/html/index.pug',
// Your custom variables:
name: 'Georg',
}
Run Code Online (Sandbox Code Playgroud)
在模板中使用它index.pug
:
span= self.htmlWebpackPlugin.options.name
Run Code Online (Sandbox Code Playgroud)
请注意,您可以直接使用变量在哈巴狗模板中设置该self
选项并省略它。false
有关更多详细信息,请参阅Pug 参考资料。
归档时间: |
|
查看次数: |
3544 次 |
最近记录: |