我有一个设置我的状态的功能,但它无法正常工作。
这是我的功能,
checkAnswer() {
this.setState({
isDropdownShown: false
});
}
我正在这样打电话,
renderAnswers(answer, idx) {
return (
<li
key={idx}
className={styles.questionDropdownItem}
onClick={() => this.checkAnswer(answer)}
>
{answer.title}
</li>
);
}
来自他的评论:
我在渲染中调用renderAnswers
方法,如下所示:
{question.answers.map(this.renderAnswers)}
我正在尝试像shouldComponentUpdate这样的所有内容,但它不起作用。
答案 0 :(得分:1)
{question.answers.map(this.renderAnswers)}
应该是
{question.answers.map(this.renderAnswers, this)}
或
{question.answers.map((answer, i) => this.renderAnswers(answer, i))}
您的第一个示例将调用renderAnswers
函数,但没有this
值,因为。map
has no way to know what
这是您想要的。