私は、複数のファイルをzipに保存してダウンロードするためにjsZipを使用しています。その繰り返しの配列名をurls配列からどのように出力するのか分かりません。各繰り返しでforEachの内部に配列の値を出力します
URL配列はそれぞれvar filename = "";
の中に入るファイル名ですが、配列名のそれぞれを出力する方法は見つけられません。
var zip = new JSZip();
var count = 0;
var urls = [
"FirstFile.pdf",
"SecondFile.pdf",
];
urls.forEach(function(url)
{
//if iteration #1, then echo firstFile.pdf below,
//if iteration #2 echo SecondFile.pdf below so it saves the files inside the zip.
var filename = "output urls array here as name";
JSZipUtils.getBinaryContent(url, function (err, data) {
if(err) {
throw err; // or handle the error
}
zip.file('./temp/' + filename, data, {binary:true});
count++;
if (count == urls.length)
{
zip.generateAsync({type:'blob'}).then(function(content)
{
$(".download").click(function() {
saveAs(content, 'FileZip.zip');
});
});
}
});
});
なぜ起こるのかわかりません。連結を別の行に移動して結果を表示しようとしましたか? 'var filename = './temp/' + url; console.log(ファイル名); ' – domwrap