我怎样才能在pug中控制来自后端的数据?
例如,这是我在expressjs中的后端:
res.render("streams/show", {
stream: cleanStream
});
在show.pug中,我想检查来自steam的数据:
- var species = stream.species;
- var fields = [];
- for (var key in species) fields.push(key)
- console.log(fields)
我在Chrome上的开发者工具上看不到任何内容。
有什么想法吗?
答案 0 :(得分:8)
您当前访问模板中数据的方法会在运行Express的终端中的后端记录信息,而不是Chrome Developer Tools中的前端。
要访问模板中的外部信息,您需要将其嵌套在script
标记中,并将JSON.stringify
与未转义的Pug字符串插值结合使用,以在HTML中呈现它,如下所示。
script
| var species = !{JSON.stringify(stream.species)};
| var fields = [];
| for (var key in species) fields.push(key)
| console.log(fields)