首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >航行实验波峰转换

航行实验波峰转换
EN

Stack Overflow用户
提问于 2016-09-21 16:02:41
回答 1查看 211关注 0票数 1

我在使用RN0.33和NavigationExperimental实现平滑转换时遇到了问题。我所看到的问题是,呈现的场景相对比较昂贵,而且NavigationExperimental为转换保留了这两个场景。我想知道优化这个过程的好策略是什么。

到目前为止,我所做的是在导航组件中有一个“isAnimating”状态,它将场景组件的shouldComponentUpdate设置为false。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-10 16:11:58

我遇到了这个问题,在转换过程中丢失的帧是由于数据的获取和随后在componentDidMount中呈现我要转换的组件而造成的。

您可以在InteractionManager中使用componentDidMount,以便只在任何动画或转换完成后才运行您的获取代码。

例如:

代码语言:javascript
复制
  import { InteractionManager } from 'react-native'

  componentDidMount() {
    this.interaction = InteractionManager.runAfterInteractions(() => {          
      performExpensiveFetch()
    })
  }

  componentWillUnmount() {
    if(this.interaction) this.interaction.cancel()
  }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39621434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档