【问题标题】:Swipe back moves multiple scenes向后滑动移动多个场景
【发布时间】:2017-06-14 05:37:27
【问题描述】:

设置

“反应”:“16.0.0-alpha.3”,

"react-native": "0.43.1",

"react-native-router-flux": "^3.26.16"

预期行为

在向后滑动手势时,我希望只为单个场景设置动画并返回该场景。

实际行为

不时 (+- 50%),向后滑动手势会为 1 个或多个场景设置动画。尽管它在向后滑动时会为多个场景设置动画,但它在每种情况下都会按单个场景返回。

复制步骤

给出以下场景层次,做向后滑动手势

<Router createReducer={createNavigationReducer}>
  <Scene key="auth" component={RootScene} hideNavBar initial={true} />
  <Scene key="sceneLogin">
    <Scene key="sceneLogin1" component={LoginScene} title="Login" renderLeftButton={renderLeftButton} />
  </Scene>
  <Scene key="sceneRegister">
    <Scene key="sceneRegister1"
      component={RegistrationScene} title="New User" renderLeftButton={renderLeftButton} />
    <Scene key="sceneRegister2"
      component={RegistrationScene2} title="New User2" />
  </Scene>
</Router>

减速器(基本)

export const createNavigationReducer = (params) => {
  const defaultReducer = Reducer(params);
  return (state, action) => {
    if (__DEV__) {
      /* eslint-disable no-console */
      if (console.group) console.group('Navigation:');
      console.log('ACTION:', action);
      if (console.groupEnd) console.groupEnd();
      /* eslint-enable no-console */
    }

    console.log(defaultReducer(state, action));
    return defaultReducer(state, action);
  };
};

导航操作

// 根视图(带有“新用户”按钮)

新用户 -> Actions.sceneRegister

// 新用户场景

下一步 -> Actions.sceneRegister2

【问题讨论】:

    标签: react-native react-router react-native-android react-native-ios react-native-router-flux


    【解决方案1】:

    在您的场景中使用panHandlers={null}

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-11
      • 2014-11-23
      • 1970-01-01
      • 2017-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多