Встроенная навигация WIX React: второй экран в стеке отображается поверх первого.

В моем приложении RN есть навигация на основе WIX React Native Navigation. У меня в приложении две вкладки. На первом экране «Настройки» отображается поверх экрана «Вход» после запуска приложения. Как это можно решить, если я хочу показать только «Логин» и из него по щелчку перейти в «Настройки»?

введите описание изображения здесь

export const goToAuth = () =>
  Navigation.setRoot({
    root: {
      bottomTabs: {
        children: [
          {
            stack: {
              children: [
                {
                  component: {
                    name: 'Login',
                    options: {
                      bottomTab: {
                        text: 'Tab One',
                      },
                      topBar: {
                        title: {
                          text: 'Tab One',
                        },
                      },
                    },
                  },
                },
                {
                  component: {
                    name: 'Settings',
                    options: {
                      topBar: {
                        title: {
                          text: 'Tab Two',
                        },
                      },
                    },
                  },
                },
              ],
              options: {
                bottomTab: {
                  text: 'Tab 1',
                },
              },
            },
          },
          {
            component: {
              name: 'PinCode',
              options: {
                bottomTab: {
                  text: 'Tab 2',
                },
              },
            },
          },
        ],
      },
    },
  });

person lecham    schedule 21.04.2019    source источник


Ответы (1)


Удалите компонент настроек из стека, ваш дочерний массив должен иметь только компонент входа в систему и программно выдвигать экран настроек с экрана входа, когда это необходимо.

Navigation.push(this.props.componentId, {
  component: {
    name: 'Settings',
    options: {
      topBar: {
        title: {
          text: 'Settings screen'
        }
      }
    }
  }
});

Это даст вам желаемое поведение.

person akhil choudhary    schedule 22.04.2019