【问题标题】:Array of arrays variable losing structure / brackets when rendered to EJS呈现给 EJS 时数组变量丢失结构/括号的数组
【发布时间】:2019-02-20 01:04:28
【问题描述】:

请帮忙!我花了几个小时试图弄清楚为什么我的数组变量数组在模板化到 ejs 文件时会变平并丢失括号 - 我需要保留数组结构以用于 highcharts 条形图中。奇怪的是,当我 console.log 进入节点时它看起来很好,例如

let example =  [ [ 1536449146000, 0 ], [ 1536450947000, 0 ], [ 1536452748000, 0 ] ]

console.log(example) // [ [ 1536449146000, 0 ], [ 1536450947000, 0 ], [ 1536452748000, 0 ] ]

但在客户端,当在 ejs 文件 <%= example %> 上调用变量时,它变为:

1536449146000,0,1536450947000,0,1536452748000,0

并且不会在 highcharts 中呈现。为什么数组会像这样失去它的结构。我所有的其他变量都在 ejs 标签中工作(单个数字或字符串)??

希望有人能帮忙..

【问题讨论】:

  • 因为 ejs 执行example.toString(),这就是您所看到的。如果你想输出JSON.stringify(example),那么明确写出来。
  • 非常感谢 完美运行!

标签: javascript arrays node.js ejs


【解决方案1】:

正如 Bergi 好心指出的那样,EJS 执行 example.toString(),因此要保持数组结构,您必须这样做:

<%=JSON.stringify(example)%>

【讨论】:

    猜你喜欢
    • 2020-05-10
    • 2018-12-26
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 2021-04-15
    • 1970-01-01
    相关资源
    最近更新 更多