我正在尝试解析CSV,最好在解析过程中将其直接加载到mongo数据库中。Papaparse有一个step:
函数,允许我以流的方式导入大型csv文件,并一次记录一行结果。(有8个,都是字符串),这样我就可以在我的DB模式中将它们作为特定的值进行赋值,然而,当我试图访问这些索引时,Typescript告诉我数据数组(row.data
)只有一个元素!
这对我来说很奇怪,因为console.log(row.data)
在解析期间将显示我想要访问的数组,每行包含8个元素。
parse(file, {
download: false,
step: function(row) {
console.log("Row: at index 0", row.data); // successfully logs array with 8 elements for each row
console.log(row.data[0]) // lint tells me that row.data only contains a single element
},
complete: function() {
console.log("All done!");
}
});
如果可以的话,我希望避免将结果传输到中间对象,而只是直接解析到我的数据库中。我希望得到任何指导,以使此过程与当前设置一起工作,或者可以获得类似结果的其他方法。
谢谢你!
1条答案
按热度按时间qyswt5oh1#
如果你使用
@types/papaparse
,那么parse方法需要一个类型参数,在你的例子中,你似乎需要一个字符串数组,因为你没有配置PapaParse来查找头。您应该能够通过指定
string[]
数据类型来解决错误:但是,如果CSV具有标题行,则使用结构化数据类型可能会更轻松地处理数据:
x一个一个一个一个x一个一个二个x