我正在尝试将libarchivejs用于我的 reactjs 项目来处理 7z 文件。
该软件包与yarn add libarchive.js
. 以下代码:
import { Archive } from 'libarchive.js/main.js';
Archive.init({
workerUrl: 'libarchive.js/dist/worker-bundle.js'
});
export const handleFile = async (file) => {
console.log('file: ', file)
console.log('_7zOpen !! ')
const archive = await Archive.open(f);
console.log('archive: ', archive)
const filesObject = await archive.getFilesObject();
console.log("filesObject: ", filesObject)
const filesArray = await archive.getFilesArray();
console.log("filesArray: ", filesArray)
return filesArray
}
这会运行,但控制台输出只会打印出来file
,_7zOpen !!
然后就停在那里而没有任何进一步的响应。没有错误被抛出,并且该行console.log('archive: ', archive)
永远不会被执行。
控制台日志输出:
file: File {path: 'CE027001-120011101924-T100.7z',
name: 'CE027001-120011101924-T100.7z',
lastModified: 1599377977254,
lastModifiedDate: Sun Sep 06 2020 16:39:37 GMT+0900, webkitRelativePath: '', …}
lastModified: 1599377977254
lastModifiedDate: Sun Sep 06 2020 16:39:37 GMT+0900 {}
name: "CE027001-120011101924-T100.7z"
path: "CE027001-120011101924-T100.7z"
size: 75602083
type: "application/x-7z-compressed"
webkitRelativePath: ""
[[Prototype]]: File
_7zOpen !!
我怀疑该Archive
对象从未真正运行过,尽管它安装和导入没有问题。
到底是怎么回事?我该如何继续调试这个问题?