首页 > 解决方案 > react native - expo - libarchive.js“找不到变量:Worker”问题

问题描述

我正在尝试解压缩 DocumentDirectoryPath 中存在的文件,但出现以下错误:

[未处理的承诺拒绝:ReferenceError:找不到变量:工人]

  • 存档中的 node_modules\libarchive.js\src\libarchive.js:37:29#constructor
  • Archive.open 中的 node_modules\libarchive.js\src\libarchive.js:26:20

我下面的代码很简单:

import { Archive } from 'libarchive.js/main.js';

 Archive.init({
      workerUrl: 'libarchive.js/dist/worker-bundle.js'
    });

const sourcePath =
      'file:///data/user/0/host.exp.exponent/files/ExperienceData/%2540testtest%252Ftest/testfile.zip';

    const archive = await Archive.open(sourcePath);

我会很感激任何想法!

标签: react-nativeexpolibarchive

解决方案


libarchivejs 与File对象一起使用,因此您需要读取文件并将其传递给,而不是传递文件路径Archive.open(fileObject)

这是读取文件的示例

https://github.com/nika-begiashvili/libarchivejs#how-to-use


推荐阅读