gpt4 book ai didi

javascript - 在 highcharts 中表达 json 对象

转载 作者:行者123 更新时间:2023-12-03 06:53:28 24 4
gpt4 key购买 nike

我正在尝试使用从node.js发送的JSON数据填充jade(使用javascript)中的highchart。我通过在jade中添加JavaScript来做到这一点,这对于静态数据来说效果很好,如下所示:

var series =  [  
{
name: 'Tokyo',
data: [7.0]
}
];

现在我想从 node.js 添加 JSON 数据。我实现了以下内容:

app.get('/chart', function(req,res){
var chartData = [
{
name: 'Tokyo',
data: [7.0]
}
];
res.render('chart', {
chart: chartData
});
});

当我在控制台中打印chartData时,输出与静态数据相同。当我( Jade )镶嵌时
var series = '#{chart}' 我得到一个空的 Highcharts 。

问题似乎出在 Node js 的 JSON 上。 Highcharts 给出了与字符一样多的系列,这意味着 jade/javascript 没有正确解析 JSON,而是逐字符解析(每个字符都是新对象)。我已将 chartData 从 node.js 打印到我的控制台,显示以下内容:

[ { name: 'Tokyo', data: [ 7 ] } ]

我在我的 Node js文件中尝试了JSON.stringify,但这返回无效的JSON,如下所示:

var series = '[{"name":"Tokyo","data":[7]}]';

如何让我的图表能够使用从 node.js 返回的 JSON?

最佳答案

我想出了如何解决这个问题。在 Node js中:

var chartData = [];  
chartData.push({
name: 'Tokyo'
data: [7.0]
});

res.render('chart', {
chart: chartData
});

在解析 JSON 时,我的错误出现在 Jade 中的 Javascript 中。以下解决了问题:

!{JSON.stringify(chart)}

关于javascript - 在 highcharts 中表达 json 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37397999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com