从场景/堆栈组件调用时,不会触发函数

时间:2018-04-27 19:16:32

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

我正在尝试将图标加载到标签栏中。我发现了什么:

我有一个需要运行的函数来确定应该加载什么图标,所以在我的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 :(得分:0)

我认为图标用于设置标签图标而不会调用任何功能,用于调用您需要使用的任何功能 onPress

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