如何在If语句中呈现某些内容Reaction Native

人气:126 发布:2023-01-03 标签: javascript android react-native react-native-flatlist

问题描述

问题

我在原生反应中使用平面列表,并希望与平面列表中的变量进行比较,如果两个变量相等,则呈现一个文本组件,如果两个变量不相等,则不呈现任何内容。我试过很多方法做这件事,但都不管用。我很想得到一些帮助,想出一种方法来做到这一点!谢谢。

推荐答案

有几种方法会立刻浮现在脑海中。我只是假设你想要比较的是什么,但你可以把这些变量换成你喜欢的。您可以做的第一件事是使您的文本在Text组件EG中是条件的

<Text>{this.state.variable == this.props.stuff ? "RENDER TEXT" : ""}</Text>

或者,如果您希望在变量不相等时发出Text组件,请在类中设置一个函数,该函数将有条件地返回Text组件

renderMessage = () => {
    if(this.state.variable == "stuff"){
        return(
            <Text>They were equal</Text>
        );
    }else{
        return(
            <View></View> // OR WHATEVER YOU WANT HERE
        );
    }
}
...
//Then in your render function
....
<View style = {styles.whatever}>
    {this.renderMessage()}
</View>

22