在使用 React Native API(Pressable)时,我注意到我的 React Native 应用程序(Android 版本)存在一些与性能相关的问题。当按下时,它会延迟几秒钟才做出响应,尤其是在使用它在屏幕之间导航时。我似乎不知道为什么会发生这种情况。在 IOS 上完美运行。
我将 React Native 版本升级到 0.71.2。我希望这可以解决延迟问题,但事实并非如此
我确信
Pressable
比其他TouchableComponent
导致延迟更多,请参阅此处的代码:
https://github.com/facebook/react-native/blob/9b8ffeee4c54eb05ca74d626b171a958fa6db4d4/Libraries/Components/Touchable/TouchableOpacity.js
与
https://github.com/facebook/react-native/blob/9b8ffeee4c54eb05ca74d626b171a958fa6db4d4/Libraries/Pressability/Pressability.js
比较
你可以看到
Pressable
是重组件,它容纳了更多的事件,即使它自己有Gesture
,因此我建议不要多次使用Pressable
,例如在FlatList项目中......