JSZip ライブラリを使用して、テキスト ドキュメントで zip ファイルを解析している Typescript で Angular 2 CLI アプリを構築しています。以下のコードは機能しますが、typescript からいくつかのエラーが発生します。
タイプ '{ [キー: 文字列]: JSZipObject の引数; }' は、タイプ 'JSZipObject[]' のパラメーターに割り当てることはできません。
タイプ '{ [キー: 文字列]: JSZipObject; にプロパティ 'find' がありません。}'。
fileChangeEvent(fileInput){
let files = fileInput.target.files[0];
let zip = new JSZip();
let files = [];
zip.loadAsync(files)
.then(zip => {
async.each(zip.files, function(zipItem, callback) {
zipItem
.async('string')
.then((content) => {
files.push(content);
callback(null);
});
}, function(err) {
if( err ) {
console.log('A file failed to process');
} else {
console.log('All files have been processed successfully');
// do something with parsed files array
}
});
});
}
への受け渡しzip.files
に問題があるようasync.each
です。
先ほど言ったように、ng serve を使用するだけで動作しますが、エラーを取り除かないとプロジェクトをビルドできません。
なぜ私がそれらを手に入れるのか知っている人はいますか?
promises/generators/whatever で同じことを行い、async.each をスキップできますか?