Функция не запускается при вызове из компонента Scene / Stack - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь загрузить значки в панель вкладок. Что я обнаружил:

У меня есть функция, которую нужно запустить, чтобы определить, какой значок должен быть загружен, поэтому в моем атрибуте icon я пытаюсь запустить функцию TabIcon, однако ничего не вызывается (я поместил предупреждение, чтобы подтвердить, что ничего не было будучи призванным). Есть мысли, почему эта функция не работает?

              <Router>
                <Scene key="root" hideNavBar
                        navigationBarStyle={{backgroundColor: "#fff"}}
                        titleStyle={navTitleStyle}
                        backButtonTintColor={color.black}
                >
                 //Removed other scenes for simplicity
                    <Scene key="Main" tabs={true} initial={this.state.isLoggedIn}>    
                 //This is where i call TabIcon
                        <Scene icon={TabIcon} iconName='timer' key="tab1" component={Home} />                  
                </Scene>
            </Router>

Над разделом компонентов находится моя функция, которую я пытаюсь вызвать:

function TabIcon(props) {
    alert('hi');
    return (
    <View style={styles.wrapper}>
      <View style={styles.container}>
        <Icon
          name={props.iconName}
          size={26}
          />
      </View>
    </View>
    )
  }

1 Ответ

0 голосов
/ 28 апреля 2018

Я думаю icon используется для установки значка вкладки, и она не вызывает никакой функции, для вызова любой функции, которую вам нужно использовать onPress

 <Scene 
    key="myTab" 
    title="My Tab" 
    icon={MyTabIcon} 
    onPress={()=> {
     ...
    }}
   >
...