首页 > 解决方案 > 性能监视器反应原生

问题描述

我注意到性能监视器中的“到目前为止下降”数字不断增加。它达到了2030fps。

这个数字应该不断增加吗?或者我的应用程序有问题。

标签: react-native

解决方案


它通常会随着时间的推移而增加,但您希望该数字尽可能低。基本上每个 javascript 操作都在 16 毫秒的时间间隔内捆绑并发送到主线程,只要 javascript 操作花费的时间超过它被认为是丢帧的时间,因为主线程不必等待下一个 16 毫秒的批处理。每 16 毫秒会导致多丢 1 帧。

例如,假设您有一个包含动画幻灯片的组件,并且做了一些工作componentDidMount,该工作需要 60 毫秒。这意味着如果您的动画在 javascript 线程上发生,它会卡顿 4 帧(这绝对是可察觉的)。

浏览您的应用并查看哪些渲染会导致应用丢帧,然后检查这些组件的渲染逻辑。您可能应该使用shouldComponentUpdate甚至更好PureComponent地防止浪费渲染。

更多信息在这里!


推荐阅读