Vi a solução dada pelo Felipe (https://cursos.alura.com.br/forum/topico-estou-tendo-o-erro-typeerror-undefined-is-not-an-object-evaluating-_this-props-foto-88754) depois de ter achado a minha:
const Post = () => {
return (
<Fragment>
<View>
<View style={styles.cabecalho}>
<Image source={require('../../resources/img/alura.jpg')}
style={styles.fotoDePerfil} />
<Text>{this.foto}</Text>
</View>
<Image source={require('../../resources/img/alura.jpg')}
style={styles.foto}
/>
</View>
</Fragment>
);
};
O código que o Felipe apresentou passa o props como parâmetro e no text usa props.foto.usuario
:
const Post = (props) => {
return(
<View>
<View style={styles.cabecalho}>
<Image source={require('../../resources/img/alfinete.png')}
style={styles.fotoDePerfil} />
<Text>{props.foto.usuario}</Text>
</View>
<Image source={require('../../resources/img/alfinete.png')}
style={styles.fotoDoPost} />
</View>
)
}
Alguém pode explicar se há uma diferença significativa entre as duas soluções ou se ambas podem ser usadas?