在JADE模板引擎上parsing数组

我正在使用ExpressJS的JADE模板引擎。

将这个数组发送到JADE模板

var data = { "labels" : ["Label 1", "Label 2"] }; res.render('index', {data: data}); 

我的JADE文件如下所示:

 script(type='text/javascript'). var options = { labels: [#{data.labels}], ... }; 

正如你所看到的,我试图获取data.labels值来内联我的JADE文件的<script>块。 但输出是这样的:

 <script type="..."> var options = { labels: [Label 1, Label 2], <-- invalid syntax ... }; 

它一定是这样的:

 <script type="..."> var options = { labels: ["Label 1", "Label 2"], <-- valid syntax ... }; 

我应该怎么做直接在JADE文件中使用数组?

JSON使事情正确:

 // magic of JSON.stringify: var src = "script var labels = !{JSON.stringify(labels)}"; // let's try and render it: var data = { "labels" : ["Label 1", "Label 2"] }; var fn = jade.compile(src); var html = fn(data); console.log(html); // output: <script>var labels = ["Label 1","Label 2"]</script> 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jade/1.11.0/jade.min.js"></script>