gpt4 book ai didi

reactjs - React JSX 中的 forEach() 不输出任何 HTML

转载 作者:行者123 更新时间:2023-12-03 12:54:21 26 4
gpt4 key购买 nike

我有一个想要通过 React 输出的对象:

question = {
text: "Is this a good question?",
answers: [
"Yes",
"No",
"I don't know"
]
}

我的 react 组件(减少)是另一个组件

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;

正如您从上面的代码片段中看到的,我试图通过使用 props 中的数组 Answers 来插入组件 Answer 的数组,它确实会迭代,但不会输出到 HTML 中。

最佳答案

您需要将一个元素数组传递给jsx。问题是 forEach 不返回任何内容(即返回 undefined)。因此最好使用 map 因为 map 返回一个数组:

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={answer} answer={answer} />)
})}
}

export default QuestionSet;

关于reactjs - React JSX 中的 forEach() 不输出任何 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47616355/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com