【发布时间】:2017-09-07 14:06:45
【问题描述】:
我在我的 react native 项目中使用 React-Native-Router-Flux 进行导航。当我从屏幕 A -> B 移动到屏幕 B 有网络呼叫时,过渡并不顺利。过渡存在明显滞后。
有什么建议可以让过渡更顺利吗?
而且,我对这个项目有非常严格的截止日期,所以改变整个导航对我来说非常困难。我的路由器组件看起来像 -
<Scene key="drawer" component={Drawer} open={false} type="replace" initial={this.state.flag ? false : true}>
<Scene key="root">
<Scene key="home" component={Home} title="HOME" initial hideNavBar type="replace" />
<Scene key="dashboard" component={Dashboard} hideNavBar={true} title="MENU DETAILS" />
<Scene key="order" component={Order} hideNavBar={true} title="ORDER SUMMARY" />
</Scene>
</Scene>
现在,我在单击按钮时使用Actions.dashboard() 移动到仪表板,在那里我在componentDidMount() 中有一个网络调用,它获取数据并调度一个操作来更新reducer,结果返回一个新状态。
同样,在Order 组件中,我正在componentDidMount() 中进行网络调用,这次我只是简单地执行this.setState({data}) 以使用获取的数据更新组件。
在导航Home -> Dashboard 和Home -> Order 中,我都在进行这种“不平滑”的过渡。
【问题讨论】:
-
你在哪里打网络电话?
-
请添加一些代码来显示您到目前为止所做的尝试。检查 How to ask 以提出问题。
-
@MattyK14 in componentDidMount.
-
@bennygenel 我有一个普通的路由器组件“Router.js”。在这里写代码有什么意义?
-
您说的是网络通话。那个电话在哪里?这些组件中还有什么?如何触发导航?这些都是相关的,因为这些都是您可能遇到性能问题的部分。
标签: react-native react-native-router-flux