【发布时间】:2017-10-31 22:14:02
【问题描述】:
根据pug-html-loader 的自述文件,加载程序接受一个data 对象,该对象作为options 的一部分传递给模板。虽然在 pug API reference 内的 options 上不可用,但我发现的一个 grunt 插件 (grunt-contrib-pug) 以相同的方式使用 API。
我为加载器指定了以下选项:
loader: 'pug-html-loader',
options: {
pretty: true,
exports: false,
debug: !env.production,
compileDebug: !env.production,
cache: config.build.useCaching,
doctype: 'html',
data: {
title: config.metadata.title,
baseUrl: config.build.baseUrl,
server: env.server,
metadata: config.metadata
}
}
我想通过以下方式访问,根据this question:
title= data.title
但是,我在编译时总是遇到以下错误:
ERROR in Error: Child compilation failed:
Module build failed: TypeError: Cannot read property 'title' of undefined
出于调试目的,我在模板中包含了以下行:
-
console.log(' DATA! ' + data);
结果:
DATA! undefined
我还通过声明一些乱码而不是对象(例如字符串、纯 json、数字..)来确保将数据正确传递给 pug,然后 pug 编译器会抱怨数据不在有效格式等
有人遇到同样的问题吗?
【问题讨论】:
标签: javascript node.js webpack pug webpack-html-loader