react-native – React Native Prevent Double Tap

前端之家收集整理的这篇文章主要介绍了react-native – React Native Prevent Double Tap前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个TouchableHighlight包装一个Text块,当点击时,会打开一个新场景(我正在使用react-native-router-flux).
这一切都很好,除了你快速点击TouchableHighlight这一事实,场景可以渲染两次.
我想阻止用户快速点击该按钮.

在Native中实现这一目标的最佳方法是什么?我查看了手势响应系统,但没有任何例子或类似的东西,如果你是新的,像我一样,令人困惑.

以下工作通过阻止两次路由到同一路由:
  1. import { StackNavigator,NavigationActions } from 'react-navigation';
  2.  
  3. const App = StackNavigator({
  4. Home: { screen: HomeScreen },Details: { screen: DetailsScreen },});
  5.  
  6. // Prevents double taps navigating twice
  7. const navigateOnce = (getStateForAction) => (action,state) => {
  8. const { type,routeName } = action;
  9. return (
  10. state &&
  11. type === NavigationActions.NAVIGATE &&
  12. routeName === state.routes[state.routes.length - 1].routeName
  13. ) ? state : getStateForAction(action,state);
  14. };
  15. App.router.getStateForAction = navigateOnce(App.router.getStateForAction);

猜你在找的React相关文章