【问题标题】:Dynamic images don't load动态图像不加载
【发布时间】:2026-02-13 15:50:01
【问题描述】:

应用程序在每次开始时使用RNFSL|在 index.android.js 附近的'./res/' 文件夹中下载图像:

var LOGOPATH = RNFS.DocumentDirectoryPath+'/res/';
RNFS.downloadFile({
            fromUrl: HOST+'logos/'+i.logo,
            toFile : LOGOPATH+i.logo
          }).catch(function(e){console.log(e)})

然后我尝试使用以下代码加载此图像:

  <View style={styles.ConferenceVerticalItemImageWrap}>
      <Image style={[styles.ConferenceVerticalItemImage,{height: height*264/1920, width: height*264/1920}]} resizeMode='contain' source={{uri:LOGOPATH+this.props.logo}}/>
    </View>

图像下载正确,文件夹包含图像,但它们没有出现在屏幕上。

【问题讨论】:

  • 您能否发布更多代码或向我们提供更多关于正在发生的事情的详细信息?这些稀疏的细节很难诊断和发出这样的问题

标签: javascript react-native


【解决方案1】:

尝试使用绝对 URL。

例如

RNFS.MainBundlePath + "/res/" + image

适应您的文件夹。也许您应该使用此处的其他常量之一:https://github.com/johanneslumpe/react-native-fs#constants

顺便说一句,我不知道您是如何下载本地图像的,但您可能应该首先尝试让您的下载库为您提供完整路径。

【讨论】:

  • 我添加了更多信息
  • 我已经尝试过你的提议,并在内部使用 RNFS 常量创建了我自己的常量,但它不起作用。