React native react本机文件系统可以';找不到应用程序文件

React native react本机文件系统可以';找不到应用程序文件,react-native,react-native-android,react-native-fs,React Native,React Native Android,React Native Fs,我正在使用react-native构建一个应用程序,我正在尝试使用react-native fs模块列出位于应用程序文件夹中的一系列图像。这些图像位于应用程序项目文件夹中名为“data”的文件夹中,因此,例如,如果我想显示其中一个图像,则可以: <Image source={require('./data/boo.png')} /> 我收到错误“文件夹不存在”。另外,当我删除+'/data'时,列出的唯一结果是一个名为'ReactNativeDevBundle.js'的文件,路径为

我正在使用react-native构建一个应用程序,我正在尝试使用react-native fs模块列出位于应用程序文件夹中的一系列图像。这些图像位于应用程序项目文件夹中名为“data”的文件夹中,因此,例如,如果我想显示其中一个图像,则可以:

<Image source={require('./data/boo.png')} />

我收到错误“文件夹不存在”。另外,当我删除+'/data'时,列出的唯一结果是一个名为'ReactNativeDevBundle.js'的文件,路径为'/data/user/0/com.awesomeproject/files/ReactNativeDevBundle.js'。这是预期的行为吗?如果这是预期的行为,而我做错了什么,我如何从应用程序中访问所需的文件夹?附带问题,如果我想为图像标签提供一个绝对路径,它会是什么样子。

首先,您是否在运行时创建数据文件夹?或者你为什么认为文件就在那里

第二,

另外,当我删除+'/data'时,列出的唯一结果是一个file by “ReactNativeDevBundle.js”的名称,路径为 “/data/user/0/com.awesomeproject/files/ReactNativeDevBundle.js”。是 这是预期的行为吗

是的,这是预期的行为,RNFS.DocumentDirectoryPath直接转到/data/user/0/com.awesomeproject/files/,如果要继续使用当前的代码,则应在此处创建数据文件夹

编辑: 根据包的一个贡献者:

那么你应该能够使用

我建议你读书

摘录:

普通文件:这些文件由应用程序使用fs或fetch API创建,您可以对这些文件执行任何操作

资产文件:编译到应用程序包中,因此通常它们处于打开状态 只读模式


1) 在我的桌面项目文件夹中,当我添加一个文件夹,比如说“数据”,并向其中添加内容时,我可以使用带有“./data/boo.png”链接的图像标记访问它,这让我相信,如果图像标记正在访问它,我的设备上的某个地方必须存在类似的文件结构。2) 我不是在运行时创建文件夹,但我注意到我可以创建文件/文件夹并使用RNFS访问它们。有没有一种方法可以让RNFS访问通过将文件夹添加到项目文件夹中创建的文件夹,就像图像标记一样?我正在尝试在构建时动态查找和显示与应用程序捆绑的任何图像,我不想像必须与图像标记那样单独链接它们。您在哪里创建数据文件夹?你能告诉我路径吗?我正在给我电脑上的项目文件夹添加一个文件夹:C:\Users\user\Dropbox\folder\folder\05\u Software\app project folder\images然后当我用tage调用这些图像时,它看起来像是:source={require('./images/ef20b264-82f2-40c1-9cc2-28b59778d2ea.png')}非常感谢你的帮助!有机会的时候我会仔细阅读的。
  RNFS.readdir(RNFS.DocumentDirectoryPath+'/data') 
  .then((result) => {
    console.log('GOT RESULT', result);
  })
  .catch((err) => {
    console.log(err.message, err.code);
  });