Рендеринг TabNavigator в сборнике рассказов - PullRequest
0 голосов
/ 10 февраля 2020

Я хочу использовать Storybook. js для макета страницы, которая использует createMaterialTopTabNavigator (). Однако я не могу отобразить вкладку материала, потому что вывод функции на самом деле не является компонентом реакции. Поэтому, когда я непосредственно попытался <TabNavigator />, он выдал инвариантное нарушение, что «навигация» отсутствовала. Единственный обходной путь, который я нашел, - это использование createAppContainer () вокруг TabNavigator. Но я знаю, что это плохая практика использовать более одного навигатора. Есть ли способ визуализации реагирующего элемента навигатора без необходимости использования контейнера навигации?

Это мой текущий рабочий код для сборника рассказов:

const tabConfiguration = {
  Old: {
    screen: OldProductsScreen,
    navigationOptions: {
      title: "Old"
    }
  },
  New: {
    screen: NewProductsScreen,
    navigationOptions: {
      title: "New"
    }
  }
};
const TabNavigator = createMaterialTopTabNavigator(tabConfiguration);

storiesOf('Test', module)
  .add('Initial', () => {
    const TAB = createAppContainer(TabNavigator);
    return (
      <TAB / >
    );
  })

;

1 Ответ

0 голосов
/ 10 февраля 2020

Я знаю, что это плохая практика - использовать более одного навигатора. Есть ли способ визуализации реагирующего элемента навигатора без необходимости использования контейнера навигации?

Это плохая практика в приложении. Но поскольку вы используете Storybook, в котором каждый контейнер находится как отдельное независимое приложение, это нормально.

...