gpt4 book ai didi

javascript - 将 json 数据插入 Google SpreadSheet 时出错

转载 作者:行者123 更新时间:2023-11-27 22:36:14 25 4
gpt4 key购买 nike

我正在尝试将 JSON 数据插入 Google 电子表格中。这是我的代码,

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false"></script>

<script>
var read=(function(){

data1={
"jobstatus": [
{
"dateAndTime": "hi",
"jobId": "TCC_tfc",
"userId": "admin",
"status": "Completed",
"jobType": "Excel Upload"
}
]
};
var jobs = data1;
var datae = new google.visualization.DataTable();

datae.addRows(["datetime",jobs.jobstatus.dateAndTime],
['jobId', jobs.jobstatus.jobId],
['userId', jobs.jobstatus.userId],
['status', jobs.jobstatus.status],
['jobType', jobs.jobstatus.jobType]
);});

</script>

在执行此代码时出现错误,如下所示

TypeError: google.visualization is undefined

我该如何解决该错误?我在“SO”中搜索了解决方案,他们让我添加这一行:

google.load('可视化', '1.0', {'packages':['corechart'], 'callback': read});

通过添加这个也得到同样的错误。有人可以帮我解决这个问题吗?

最佳答案

这里有一些建议...

1) 推荐使用 loader.js与旧库相比 jsapi

<script src="https://www.gstatic.com/charts/loader.js"></script>

2) 命名 callback函数,而不是分配给变量

google.charts.load('current', {
callback: read,
packages:['table']
});

function read(){...}

3) 必须在 addRows 之前添加列,有几种方法可以做到这一点,使用 arrayToDataTable很容易

var datae = google.visualization.arrayToDataTable([
['datetime', 'jobId', 'userId', 'status', 'jobType'],
]);

4) 在 data1 , "jobstatus"是一个数组,所以必须使用数组元素索引来访问值

jobs.jobstatus[0].dateAndTime // get first array element with [0]

--或--

如果有多个jobstatus在数组中,使用循环将它们全部添加,使用 addRow

jobs.jobstatus.forEach(function (job) {
datae.addRow([
job.dateAndTime,
job.jobId,
job.userId,
job.status,
job.jobType
]);
});

请参阅以下工作片段...

google.charts.load('current', {
callback: read,
packages:['table']
});

function read(){
var data1={
"jobstatus": [{
"dateAndTime": "hi",
"jobId": "TCC_tfc",
"userId": "admin",
"status": "Completed",
"jobType": "Excel Upload"
}]
};
var jobs = data1;

var datae = google.visualization.arrayToDataTable([
['datetime', 'jobId', 'userId', 'status', 'jobType'],
]);

jobs.jobstatus.forEach(function (job) {
datae.addRow([
job.dateAndTime,
job.jobId,
job.userId,
job.status,
job.jobType
]);
});

var chart = new google.visualization.Table(document.getElementById('chart_div'));
chart.draw(datae);
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>

关于javascript - 将 json 数据插入 Google SpreadSheet 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39074956/

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