[英]how to use jade/pug conditionals inside a script block?
我正在努力使这个工作。 即时通讯实际上使用Chart.js并尝试用数据数组填充图形。 所以我的代码看起来像
block lower-scripts
script.
var data = {
labels : [
each visit in visitstats
#{visit.date},
],
我得到的输出看起来像
<script>var data = {
labels : [
each visit in visitstats
04/17/2016,
],
而且我认为那是不对的。 它应该将每个语句打印到html输出中吗?
我试着遵循以下几个问题,但无法正常工作。 看起来每个语句都没有运行。 尝试使用-使它运行。 尝试在js前面的管道使其成为异常。 没有。 谁能告诉我我要去哪里错了?
将隐藏的输入标签放在玉器中,例如
body
input(type="hidden", id="visit-stats-json", value= JSON.stringify(visitstats) )
script.
var visitStatsValue = document.getElementById("visit-stats-json");
var visitStatsJSON = JSON.parse( visitStatsValue );
var labelsArray = [];
for( var i = 0; i < visitStatsJSON.length; i++ )
{
var visit = visitStatsJSON[i];
labelsArray.push( visit.date );
}//for
var data = { labels: labelsArray };
现在,您的数据变量应具有所需的值。
编辑:我使用完全相同的语法,它的工作原理。 请注意, value=
之后有一个空格。 如果仍然无法使用,您还可以尝试以下方法以达到相同的结果:
-var visitStatsString = JSON.stringify(visitstats);
input(type="hidden", id="visit-stats-json", value= visitStatsString )
可以使用内联插值:
script.
var visitstats = #[JSON.stringify(visitstats)];
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.