React Native Expo无法加载本地文件

osh3o9ms  于 2023-06-24  发布在  React
关注(0)|答案(1)|浏览(141)

我正在开发应用程序,其中本地文件存储在用户手机的文件系统。当我尝试检查文件是否存在

var info = await FileSystem.getInfoAsync(`${AppConstants.APP_FOLDER}/main.png`);
console.log(info.exists);

它将打印真实。但如果我在检查后尝试读取文件的内容:

var content = await FileSystem.readAsStringAsync(`${AppConstants.TILE_FOLDER}/main.png`);
console.log(content.length);

它冻结了,什么也不会打印出来。我已经在Expo Go上测试了我的应用程序。文件路径是这样的:file:///var/mobile/Containers/Data/Application/.../app_folder/main.png
文件系统工作正常,通过URL加载在线文件,可以显示图像,而在我的情况下,它们不能。我应该如何解决我的问题?我需要提供哪些额外数据?谢谢

mlnl4t2r

mlnl4t2r1#

这不算是答案。但是,我有类似的事情发生在我身上。你不能真的相信console.log()告诉你什么代码正在执行。
我正在阅读一个文件,然后处理其中的数据。看起来好像FileSystem.readAsStringAsync()挂起了,因为我的console.log()消息没有打印出来,而这个消息是直接在FileSystem调用之后发出的。但是,事实证明,问题出在我的处理代码中。
一旦我专注于我的处理代码,我就发现了问题并纠正了它。也许这就是你的情况?

相关问题