我正在尝试生成一个包含数据库返回的文件名的zip文件。我使用以下代码:
var pathforZip = '';
for(let k=0;k<filenameArray.length;k++){
if(resultset[k].length > 0){
pathforZip += "{ path:"+"'./"+filenameArray[k]+"', name: "+"'"+filenameArray[k]+"'},";
}
}
pathforZip = pathforZip.substring(0, (pathforZip.length-1));
res.zip([pathforZip],new Date().getTime()+'.zip');
当我打印pathforZip
及其类型时,它会给我
{ path:'./begins.csv', name: 'begins.csv'},
{ path:'./ends.csv', name: 'ends.csv'},
{ path:'./crashes.csv', name: 'crashes.csv'}
并输入一个字符串,但是我得到一个错误,路径必须是res.zip的字符串
答案 0 :(得分:1)
我认为你想要的是创建一个objetc数组来传递给res.zip,如下所示:
let paths = [];
for(let k=0;k<filenameArray.length;k++){
if(resultset[k].length > 0){
paths.push({ path:'./'+filenameArray[k], name: filenameArray[k]};
}
}
res.zip(paths, new Date().getTime()+'.zip');
正确?