Je suis en train de changer la couleur d'un composant en fonction du type de pokemon qui est affichée. J'ai ce point de vue à l'intérieur d'un composant parent qui retrievs pokemon à partir d'une api. Le pokemonType variable est à partir de l'api. Il enregistre et je peux console.log ("pokemonType') qui enregistre le type de pokemon e.g 'herbe'. Il semble que l'opérateur ternaire n'est pas de l'inscription de l'pokemonType et aller directement à défaut. Suis-je écrire à ce mal?
{/* Pokemon Type */}
<View style={[
(pokemonType === 'grass') ? styles.grass : styles.pokemonTypeDefault,
(pokemonType === 'fire') ? styles.fire : styles.pokemonTypeDefault,
(pokemonType === 'water') ? styles.water : styles.pokemonTypeDefault,
(pokemonType === 'bug') ? styles.bug : styles.pokemonTypeDefault,
(pokemonType === 'ghost') ? styles.ghost : styles.pokemonTypeDefault,
(pokemonType === 'rock') ? styles.rock : styles.pokemonTypeDefault,
(pokemonType === 'steel') ? styles.steel : styles.pokemonTypeDefault,
(pokemonType === 'electric') ? styles.electric : styles.pokemonTypeDefault,
]}>
<Text style={styles.pokemonTypeText}>{pokemonType.toUpperCase()}</Text>
</View>
const styles = StyleSheet.create({
grass: {
backgroundColor: '#00FF00',
width: 250,
height: 30,
marginTop: 10,
marginLeft: 80,
borderRadius: 50,
},
fire: {
backgroundColor: '#FFA500',
width: 250,
height: 30,
marginTop: 10,
marginLeft: 80,
borderRadius: 50,
},
}) ..//All the other type styles
pokemonTypeDefault: {
width: 250,
height: 30,
marginTop: 10,
marginLeft: 80,
borderRadius: 50,
backgroundColor: 'blue',
},
Merci beaucoup