我正在从服务器请求数据,然后尝试将其分配给items
。 console.log显示的是正确的数据,但出现错误:Failed prop type: Invalid props 'items' of type 'object supplied to Timeline, expected array'. I thought
items.add`将数据集转换为数组?
var items = new vis.DataSet();
items.add(data.abs.map(a, index) => ({
id: index + 1,
content: a.Ent,
start: a.time,
title: a.Trc,
end: null
})));
数据:
"data": {
"abs": [
{
"Ent": "Changed",
"time": 1499348050000,
"Trace": [
{
"filename": "C:/Users/Public/Desktop/word.doc"
}
]
}
答案 0 :(得分:0)
根据vis.dataset docs,add
不会转换数据集,它只会返回添加项ID的数组。在您的代码示例中,变量items
实际上是 数据集对象本身。当您调用items.add(...
时,该表达式确实返回一个数组,但没有捕获它。我假设您正在传递项目作为道具,它仍然是数据集对象,但是您也许可以使用::map
函数,它返回一个数组。