【发布时间】:2019-12-13 20:59:48
【问题描述】:
我正在尝试将收集数据转换为 csv,所以我正在使用 'csv-stringify' npm
我在
中转换成csv的代码 ...auditlogs.reduce((rows, data) => {
const newRows = []
const newRow = {}
console.log('data: ', data);
console.log('data._id: ', data._id);
console.log('data.actor: ', data.actor);
newRow[(null, 'Actor')] = data.actor;
newRow[(null, 'Date')] = data.date;
newRow[(null, 'Action')] = data.action;
newRow[(null, 'Data')] = data.object;
newRow[(null, 'Description')] = data.description;
newRows.push(Object.assign({}, rowProto, newRow))
const newRowsNoHeaders = newRows.map(row => Object.values(row))
return [...rows, ...newRowsNoHeaders]
}
console.log('data: ', data) 的结果是
data = { _id: 5ae01fa9dc9e47001a92abd4,
actor: 'Toan',
date: 2018-04-25T06:26:49.057Z,
origin: '',
action: 'Add',
label: '',
object:
'{ _id: 5ae01fa9dc9e47001a92abd3,\n name: \'Welcome\', __v: 0 }',
description: '',
__v: 0 }
但是当我试图获取它显示未定义的值时。
data.actor = 未定义
但只有data._id 给出了正确的值。
有人能告诉我一个解决方案吗?
【问题讨论】:
-
请注意,
_id: 5ae01fa9dc9e47001a92abd4是无效语法,date: 2018-04-25T06:26:49.057Z也是如此。请创建一个minimal reproducible example - 除了语法错误之外,您当前的代码没有说明您描述的问题 -
您需要提供minimal reproducible example。问题中没有足够的信息来确定问题所在。 (这可能是时间问题,但由于您没有显示用于检查
data.actor的代码与用于为data赋值的代码之间的关系,我们可以'不能确定)。 -
@JaromandaX,但我明白了。我可以给你看截图。
-
@JaromandaX,我已经更新了我的问题,请再次查看。
-
@JaromandaX,但是我的语法怎么无效?它不是一个对象?
标签: javascript node.js string object