Handlebars将字符串数组转换为变量数组

时间:2016-12-23 09:50:03

标签: javascript express handlebars.js

我的问题是,当我向把手模板发送数据时,它会将我的字符串数组转换为变量数组:

res.render('index', { 
  title: 'Express' ,
  chartT:"title",
  lab:['test','test2','test3'],
  dat:[1,3,5]
});

模板代码:

  <canvas id="myChart" width="400" height="400"></canvas>
    <script>
      var pollOptions = [{{{lab}}}];
      var pollData = [{{{dat}}}];
      createChart("mychart",pollOptions,pollData);
    </script>

在pollOptions中我遇到了这个问题

var pollOptions = [test,test2,test3];

未捕获的ReferenceError:未定义测试

我不知道为什么模板会转换它们......

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

HandleBars致力于HTML模板化(不呈现JS变量) 你可以这样做(没有把手):

var pollOptions = ["{{{lab}}}"];
var pollData = ["{{{dat}}}"];

答案 1 :(得分:0)

好的,我已经弄清楚了!

var rawData = "{{{lab}}}";
var pollData = rawData.split(",");

现在我可以将它用作字符串数组