如何根据用户操作更改图标?

时间:2020-05-14 17:12:27

标签: react-native

我正在用React Native开发一个项目。我有一个带有文本和图标的标题。

const Header = ({ navigation, state }) => (

    <View style={styles.header}>

        <View style={styles.identidadeAppContainer}>
            <View style={styles.nomeAppContainer}><Text style={styles.nomeAppText}>BigodeAPP</Text></View>
            <View style={styles.logoAppContainer}><Image style={styles.imageLogo} source={Images.logoBigodeApp}></Image></View>

        </View>
        <View style={styles.iconContainer}>
            {
                !state ? 
                <Icon name="angle-down" size={25} color={colors.secundary} />
                :
                <Icon name="cut" size={25} color={colors.secundary} />

            }

        </View>

    </View>

)

我在我的APP中调用Header:

<Header state={stateMenu} />

stateMenu是一个布尔变量,会根据用户的操作进行更改。

但是,即使stateMenu更改了值,我也无法重新嵌入标题以在以后制作Icon。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

我认为,您可以通过以下方式做到:

const Header = ({ navigation, state }) => (

    <View style={styles.header}>

        <View style={styles.identidadeAppContainer}>
            <View style={styles.nomeAppContainer}><Text style={styles.nomeAppText}>BigodeAPP</Text></View>
            <View style={styles.logoAppContainer}><Image style={styles.imageLogo} source={Images.logoBigodeApp}></Image></View>
        </View>
        <View style={styles.iconContainer}>
            <Icon name={state ? "cut" : "angle-down"} size={25} color={colors.secundary} />
        </View>
    </View>
)

one line if statement道具上有一个name