在 React Native 中渲染动画 GIF 的更有效方式
A more efficient way to render animated GIFs in React Native
我正在开发一个可与大量动画 GIF 配合使用的 React 本机应用程序。
我已经尝试使用 react native 文档库 com.facebook.fresco:animated-gif:1.3.0 来支持 gif 动画,然而,默认的性能图像组件很糟糕,但是使用 FastImage 包我最多可以获得 10 个 gif。
由于有可能将原生库集成到 React Native 中,我想知道有什么办法可以解决这个问题?
我已经测试了几种提高在 React Native 中加载多个动画 GIF 的性能的方法:
动画图片的更好格式是 webp(为什么?)。压缩后,无论是在您的网络应用程序还是移动应用程序中,它都可以轻量级地加载大约 90%。
应升级 Facebook 的 Fresco 库,该库是用于渲染 gif 和 webp 文件的文档推荐库,因为它为多个 gif 加载提供了更好的性能,并且还应添加原始 fresco 库作为依赖 - 目前,至少 1.5.0 或更高版本,如果可能,w/ react-native:0.54 -.
FlatList 可以使用 removeClippedSubviews
prop 进行优化以删除不在屏幕上的任何内容。或者,有 third-party 库,例如 recyclerlistview
或延迟加载列表。
在某些情况下,使用 fast-image
进行缓存也很有用。
我正在开发一个可与大量动画 GIF 配合使用的 React 本机应用程序。
我已经尝试使用 react native 文档库 com.facebook.fresco:animated-gif:1.3.0 来支持 gif 动画,然而,默认的性能图像组件很糟糕,但是使用 FastImage 包我最多可以获得 10 个 gif。
由于有可能将原生库集成到 React Native 中,我想知道有什么办法可以解决这个问题?
我已经测试了几种提高在 React Native 中加载多个动画 GIF 的性能的方法:
动画图片的更好格式是 webp(为什么?)。压缩后,无论是在您的网络应用程序还是移动应用程序中,它都可以轻量级地加载大约 90%。
应升级 Facebook 的 Fresco 库,该库是用于渲染 gif 和 webp 文件的文档推荐库,因为它为多个 gif 加载提供了更好的性能,并且还应添加原始 fresco 库作为依赖 - 目前,至少 1.5.0 或更高版本,如果可能,w/ react-native:0.54 -.
FlatList 可以使用
removeClippedSubviews
prop 进行优化以删除不在屏幕上的任何内容。或者,有 third-party 库,例如recyclerlistview
或延迟加载列表。在某些情况下,使用
fast-image
进行缓存也很有用。