微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

图像未显示在 React Native Image Tag 中

如何解决图像未显示在 React Native Image Tag 中

图像未显示在带有 url 的本机图像标记中: http://p16-sign-sg.tiktokcdn.com/v0201/242656049b324dff81b45d22479a1a61~tplv-noop.image?x-expires=1622659795&x-signature=CA4o%2BuzVVSTyUdH7T08a2%2FPgFpY%3D

const url='http://p16-sign-sg.tiktokcdn.com/v0201/242656049b324dff81b45d22479a1a61~tplv-noop.image?x-expires=1622659795&x-signature=CA4o%2BuzVVSTyUdH7T08a2%2FPgFpY%3D';
<Image
  style={styles.image}
  source={{ uri: url }}
  imageStyle={styles.imageRadius}
  defaultSource={require('assets/loadingImage.png')}
 />

解决方法

这发生在我较旧的 React Native 版本中,更新后修复。 更新 React Native 版本。

,

这可能是因为您使用的是 React Native 和 iOS 模拟器版本 14。

如果您使用的是 iOS 模拟器版本 14,请按照以下步骤解决问题

转到文件 ~> /node_modules/react-native/Libraries/Image/RCTUIImageViewAnimated.m

转到第 270-290 行 你可以看到这样的代码:

1000000 grams

在 if 块中添加一个 else 语句并使其像这样:

- (void)displayLayer:(CALayer *)layer
{
  if (_currentFrame) {
    layer.contentsScale = self.animatedImageScale;
    layer.contents = (__bridge id)_currentFrame.CGImage;
  }
}

然后关闭所有内容并运行命令。 - (void)displayLayer:(CALayer *)layer { if (_currentFrame) { layer.contentsScale = self.animatedImageScale; layer.contents = (__bridge id)_currentFrame.CGImage; }else { [super displayLayer:layer]; } } 用于清除缓存,然后使用命令 npm start -- --reset cache 启动应用程序,这应该可以解决您的问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。