如何解析动态标题和空行?

时间:2017-02-02 11:23:15

标签: csv meteor papaparse

如何解析具有不同标题名称的csv文件? 我试图在流星方法中做到这一点:

parseUpload(data){
check(...)
for(let i=0;i<data.length;i++){
  let item = data[i]
  let thing = {
    name: item.name || item.itemname || item.something,
    category: item.category
  }
  items.insert(thing);
}

但它始终采用第一个参数(item.name),因为它是空的,所以无法执行该方法。我如何使用OR语句将名称绑定到doc.namesArray,这样上传的文件可以使用列名的别名?

另外,我注意到当你使电子表格不是从1A开始时,它会在csv文档中创建空行/行。 papaparse仍然期望第一列是“名称”,一切都停止工作(直到我重新创建csv文件,所以它以实际值开始)。

1 个答案:

答案 0 :(得分:0)

如果您尝试将此代码粘贴到浏览器的控制台窗口中:

item={name:' ',itemname:"itemname",something:"something"}
item.name || item.itemname || item.something

你会得到这个:

" "

与此类似:

item={name:'',itemname:"itemname",something:"something"}
item.name || item.itemname || item.something

你得到了

"itemname"

因此,如果item.name为空字符串或缺失,则返回item.itemname

所以代码没问题,你的数据不能像你期望的那样。尝试将console.log(item)放入并查看所获得的内容,或设置断点并进行检查。