升级xcode12后,React Native ios工程,图片不显示解决问题

升级xcode 12后,图片不显示解决办法

一、升级 react-native 到0.63版本以上

二、在当前版本,给react-native打补丁包,使用了patch-package(需要执行 yarn add --dev patch-package),本质就是在当前的react-native 的git版本上打补丁包。

1.打开xcode 搜索 RCTUIImageViewAnimated.m 文件或根据路径查找
项目/node_modules/react-native/Libraries/Image/RCTUIImageViewAnimated.m

搜索方法

#pragma mark - CALayerDelegate

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

替换为

#pragma mark - CALayerDelegate

- (void)displayLayer:(CALayer *)layer
{
  if (_currentFrame) {
    layer.contentsScale = self.animatedImageScale;
    layer.contents = (__bridge id)_currentFrame.CGImage;
  } else {
    [super displayLayer:layer];
  }
}
2.给react-native打补丁

需要先安装 patch-package

 yarn add --dev patch-package
npx patch-package react-native 或者 yarn patch-package react-native
3.添加patches到git里
git add patches/*
// 例如:git add patches/react-native+0.61.0.patch
4.添加script自动执行补丁

在package.json文件中添加

"scripts": {
  ...
  "postinstall": "patch-package",
}

此方法是不管什么时候执行 npm install 或 yarn install ,最后总会自动为虽有需要打补丁的文件执行补丁操作

参考文献:https://blog.0x5e.cn/2017/10/14/patch-npm-package/

你可能感兴趣的:(升级xcode12后,React Native ios工程,图片不显示解决问题)