1

我有以下代码(Chart.js 片段):

datasets: [{
                  label: 'Hashes/s',
                  data: numbersList,
                  backgroundColor: [
                      'rgba(255, 99, 132, 0.2)',
                      'rgba(54, 162, 235, 0.2)',
                      'rgba(255, 206, 86, 0.2)',
                      'rgba(75, 192, 192, 0.2)',
                      'rgba(153, 102, 255, 0.2)',
                      'rgba(255, 159, 64, 0.2)'
                  ],

现在我像这样从主应用程序传递这个本地:

require('../charter')((numbersList) => {
  res.render('index', {
    numbersList: numbersList
  })
})

不幸的是,它看起来只适用于 pug 页面的顶部范围。如果我写h1=hashesList它会打印出 [1,2,3] (例如),但似乎 pug 脚本内部的范围不允许这样做。

我错过了什么?谢谢。

4

1 回答 1

1

在您的哈巴狗模板中,当您对数据进行字符串化时,您需要在脚本中使用未转义的插值。

script.
  var numbersList = !{JSON.stringify(numbersList)};

这会将您的变量输出为与浏览器兼容的 JavaScript 对象。使用#符号进行转义插值在这里不起作用,因为它将引号从"to转义\\"

于 2018-10-11T16:22:38.513 回答