Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 反应本机缓慢UI转换性能缓慢_Reactjs_React Native - Fatal编程技术网

Reactjs 反应本机缓慢UI转换性能缓慢

Reactjs 反应本机缓慢UI转换性能缓慢,reactjs,react-native,Reactjs,React Native,我在React Native中构建了一个android应用程序,可以进行位置跟踪,定期将lat/lng发送到用户选择的服务器。 管理员用户可以通过以1秒的时间间隔启动轮询,定期列出位置的更改来跟踪用户,这会创建响应缓慢的UI,并且在组件之间移动时会有一些延迟。 我正在使用react native background timer,但它没有按预期工作 调用轮询函数而不阻塞UI的最佳方法是什么? 这是我的密码 `onChangeTab(event) { if (event === 1) {

我在React Native中构建了一个android应用程序,可以进行位置跟踪,定期将lat/lng发送到用户选择的服务器。 管理员用户可以通过以1秒的时间间隔启动轮询,定期列出位置的更改来跟踪用户,这会创建响应缓慢的UI,并且在组件之间移动时会有一些延迟。 我正在使用react native background timer,但它没有按预期工作

调用轮询函数而不阻塞UI的最佳方法是什么? 这是我的密码

`onChangeTab(event) {
  if (event === 1) {
     intervalId = BackgroundTimer.setInterval(() => {
      this.props.actions.getAllLocationAction();
    }, 2000);
  } else {
    BackgroundTimer.clearInterval(intervalId);
  }
  this.setState({
    activeTab: event
  });
}`

如果UI由动画组成,则可以使用InteractionManager API。有一个runAfterInteractions()方法,允许您延迟(长时间运行)操作,直到完成所有动画。例如:

从'react native'导入{InteractionManager};
onChangeTab(事件){
如果(事件===1){
InteractionManager.runAfterInteractions(()=>{
this.props.dispatchTeamFetchStart();
});
}
这是我的国家({
活动选项卡:事件
});
}