2017-12-21 11 views
2

Ich möchte den Text der Schaltfläche basierend auf der Antwort vom Server zurückgegeben werden.Wie geht das? meine Antwort so aussehenWie ändert man den Schaltflächentext bei Abrufantwort in reaktivem nativen?

{ 
"responseHeader": { 
"type": "314", 
"status": "200", 
"message": "Successfully found the profile" 
}, 
"neighbourProfile": [{ 
"no_of_mutual_friends": "0", 
"is_anchored": "1", 
}, 
{ 
"no_of_mutual_friends": "0", 
"is_anchored": "0" 
}] 
} 

Ich möchte den Text ändern Taste basierend auf Status is_anchored, wenn es 0 ist, möchte ich Schaltfläche Text als friends sonst add, wie kann ich das tun? Das ist mein Teil reagieren

return (
     <Card> 
     <CardSection> 
     <Image style ={styles.thumbnail_style} source={{uri : profile_image_url}} /> 
     <View style= {styles.thumbnailContainerStyle}> 
    <Text style={styles.userStyle}>{username}</Text> 
     <Image source={require('./src/Images/profession_cell.png')}/><Text style={styles.textStyle}> 
     No profession to show</Text> 
     <Text style={styles.friendStyle}>{no_of_mutual_friends} Mutual friends</Text> 
     </View> 
     <View style={styles.buttonStyle}><Button color="#00BFA5" title="Add" onPress={() =>console.log("clicked")}> 
     </Button></View> 
     </CardSection> 

     </Card> 
    ); 

Antwort

3

Mit Ihrer vorherigen Frage, nachdem Sie Nachbarn in Zustand gesetzt:

.then((responseData) =>this.setState({neighbours: responseData.neighbourProfile})); 

können Sie die Tasten wie folgt machen:

render() { 
    return (
    <View> 
    { 
     this.state.neighbours.map((neighbour) => { 
     return (
      <Button title={neighbour.is_anchored == "0" ? 'friends' : 'add'} /> 
     ) 
     }) 
    } 
    </View> 
); 
} 

Dies zeigt is_anchored Wert einfaches Ergebnis zu Nachbarn reflektieren.

Update 1:

Mit Ihrer Frage Update scheint es dort eine Variable is_anchored sein sollte. dann könnte es sein:

+0

Ich habe das oben genannte versucht, aber jeder Knopf ist mit demselben Text 'Freunde'. Muss ich Kartenmethode hier wieder verwenden? – anu

+0

Ich habe es versäumt, Zitat zu 'is_anchored' hinzuzufügen, ich habe nicht bemerkt, dass es eine Zeichenfolge ist. versuche '{is_anchored ==" 0 "? 'Freunde': 'add'} ' – Val

+0

i'v versucht, dieses' \t \t { \t \t \t Rückkehr this.state.neighbours.map (Nachbarn => \t \t \t \t \t \t); \t \t} \t 'aber Syntaxfehler – anu

Verwandte Themen