0
일부 프로세스를 자동화하고 일부 파일을 zip으로 가져온 다음이 zip을 압축해야합니다. 노드 아카이버를 사용하고 있지만 코드는 작동하지 않습니다.일부 파일을 압축 한 다음 zip 파일을 압축합니다. 노드 js
function zip(name, files, path, callback) {
let output = fs.createWriteStream(name + '.zip'),
archive = archiver('zip', {store: true});
output.on('close',() => {
console.log(archive.pointer() + ' total bytes');
console.log('archiver has been finalized and the output file descriptor has closed.');
});
archive.on('error', err => {
throw err;
});
archive.pipe(output);
if(files.constructor === Array)
files.forEach((e, i) => {
archive.append(fs.createReadStream(path + e), {name: e});
});
else
archive.append(fs.createReadStream(path + files), {name: files});
archive.finalize();
if(callback) {
callback();
}
}
fs.readFile(widgetPath + widgetFileName + '.manifest', 'utf8', (err, json) => {
let jsonData = JSON.parse(json),
name = jsonData.name;
return zip(name, [fileJS, fileManifest, fileHtml], widgetPath,
zip(name, name + '.zip', './'));
});
"작동하지 않음"을 정의하십시오. –
zip에 우편 번호가 있지만 두 번째 우편 번호 안에 파일을 가져올 수 없습니다. –