@amazon-devices/react-native-fast-image库版本2.0.0在Vega上提供对于react-native-fast-image的支持,后者提供高性能React Native图像组件。
React Native的Image组件像浏览器一样处理图像缓存。如果服务器为图像返回正确的缓存控制标头,您会在浏览器中看到内置的缓存行为。
您可能还会注意到:
- 闪烁
- 缓存未命中
- 从缓存进行加载时性能低下
- 总体性能低下
FastImage是Image的替代物,它解决了除Web之外的其他平台上的这些问题。
此库由系统部署,可供适用于Vega的React Native应用使用,无需单独的安装过程。此库自动链接,您的应用在运行时会链接到该库。该库保证仅与为之构建的适用于Vega的React Native版本兼容。
升级应用的适用于Vega的React Native版本时,可以考虑升级其库依赖关系的最佳实践。
有关此库及其API的更多信息,请参阅FastImage GitHub存储库中的README.md文件(仅提供英文版)。
安装
-
在
package.json文件中添加JavaScript库依赖项。 -
使用
npm install命令重新安装依赖项。
示例
API参考
组件
方法
已知问题和限制
在API支持方面,适用于Vega的React Native库有一些例外。Vega平台不支持以下功能。source.headerssource.cachetintColordefaultSourceonFastImageProgress(依赖项Image.onProgress有问题。)
向后兼容问题
Vega OS版本v0.12、OS1.1 (201010334050) 及更高版本与amzn/react-native-fast-image(npm程序包)2.0.1726598878及更低版本不兼容。 在v0.12及更高版本的操作系统上,运行按照旧版本npm程序包构建的应用时,会在启动时出现以下崩溃情况:
Volta:Invariant Violation: TurboModuleRegistry.getEnforcing(...): 'FastImageTurboModule' could not be found.验证此名称的模块是否已在原生二进制文件中注册。
要解决这个问题,您必须按照最新版本的@amazon-devices/react-native-fast-image重新构建应用:
-
确保您应用的
package.json不会对任何旧版本的fast-image进行硬编码。 建议使用SemVar版本~2.0.0,以便应用可以获取最新的补丁。 -
删除package-lock.json可移除任何锁定的fast-image版本。
如果您使用package-lock.json来锁定其他依赖项,则可以手动删除
@amazon-devices/react-native-fast-image的条目。 -
为确保npm不会获取旧的缓存版本,请删除
node_modules文件夹。 - 重建您的应用。

