我正在尝试将一些CSV数据放入数据表中,以创建折线图。 CSV在创建新的数据表(变量 data2Array )之前先经过了清理数据的功能。
我只想访问 data2Array 中的5列。当我尝试使用5个数据值添加新行时,出现以下异常:
const data = [{id: 1, parent_id: null, name: 'test1'},{id: 2, parent_id: null, name: 'test2'},{id: 3, parent_id: 2, name: 'test3'},{id: 4, parent_id: 2, name: 'test4'},{id: 5, parent_id: 4, name: 'test5'},{id: 6, parent_id: 4, name: 'test5'},{id: 7, parent_id: 2, name: 'test5'},{id: 8, parent_id: 2, name: 'test5'},{id: 9, parent_id: null, name: 'test5'},{id: 10, parent_id: null, name: 'test5'},]
function nest(data, parentId = null) {
return data.reduce((r, e) => {
let obj = Object.assign({}, e)
if (parentId == e.parent_id) {
let children = nest(data, e.id)
if (children.length) obj.children = children
r.push(obj)
}
return r;
}, [])
}
console.log(nest(data))
这让我感到困惑,因为我看到我只尝试将一行添加到 data2Table ,仅提供了上述5个值。这是该行的日志:
0,2015年7月1日,3.379,6.57,0
data2Array 具有32列和29行,但是在我的DataTable中,在尝试添加行之前,我仅指定了5列。由于我没有在原始数据源中添加任何内容,而是在 data2Table 中添加了任何内容,因此为什么异常会提到第29行或需要32列?我的新DataTable仅指定了5列。
以下是我当前正在使用的代码:
Uncaught Error: Row 29 has 1 columns, but must have 32