J'ai un objet que je veux sortir via REACT
question = {
text: "Is this a good question?",
answers: [
"Yes",
"No",
"I don't know"
]
}
et mon composant de réaction (coupé), est un autre composant
class QuestionSet extends Component {
render(){
<div className="container">
<h1>{this.props.question.text}</h1>
{this.props.question.answers.forEach(answer => {
console.log("Entered"); //This does ifre
<Answer answer={answer} /> //THIS DOES NOT WORK
})}
}
export default QuestionSet;
comme vous pouvez le voir dans l'extrait ci-dessus, j'essaie d'insérer un tableau du composant Answer en utilisant le tableau Answers dans les propriétés, il est itératif mais n'est pas sorti en HTML.
Vous devez passer un tableau d'éléments à jsx
. Le problème est que forEach
ne renvoie rien (c.-à-d. Qu'il retourne undefined
). Il vaut donc mieux utiliser map
car il retourne un tableau comme celui-ci
class QuestionSet extends Component {
render(){
<div className="container">
<h1>{this.props.question.text}</h1>
{this.props.question.answers.map((answer, i) => {
console.log("Entered");
// Return the element. Also pass key
return (<Answer key={i} answer={answer} />)
})}
}
export default QuestionSet;