9
내 React 렌더에서 지속적인 문제가 발생합니다.반응 렌더링의 불변의 위반 또는 반복의 올바른 방법
이 코드
/** @jsx React.DOM */
var AnswerRows = React.createClass({
componentDidMount: function() {
},
render: function() {
{this.props.answers.map(function(answer, i) {
return (
<div id="answerRow">
<label className="AnswerText">
<input type="checkbox" value={answer.id} />
{answer.text}
</label>
</div>
);
}, this)}
}
});
var QuizTaking = React.createClass({
componentDidMount: function() {
},
render: function() {
return (
<div className="card-holder">
<div className="showQuestionCard x-card host">
<h3 dangerouslySetInnerHTML={{__html: this.props.question.text}}></h3>
<div className="answerRows">
<AnswerRows answers={this.props.question.answers}/>
</div>
<div className='submitAnswers'></div>
</div>
<div className="paper-shadow-bottom"></div>
</div>
)
}
})
나에게 Invariant Violation: AnswerRows.render(): A valid ReactComponent must be returned. You may have returned undefined, an array or some other invalid object.
오류를 줄 것이다. 난 정말 여기에 가고, 그리고 그것을 할 아마도 '올바른'방법을 이해하고 싶습니다
/** @jsx React.DOM */
var TestIndex = React.createClass({
propTypes: {
},
loadTest: function(i) {
window.location.replace(this.props.tests[i].url.replace(".json", "/take"))
},
render: function() {
return(
<div className="testTable card-holder">
<div className="card-contents">
{this.props.tests.map(function(test, i) {
return (
<div className="testTableRow x-card host" key={test.id}>
<label className="__TITLE">{test.title}
<button onClick={this.loadTest.bind(test, i)} key={i} type="button" className="StartButton paper-button raisedButton">Start this test</button>
</label>
<div className="paper-shadow-bottom"></div>
</div>
);
}, this)}
</div>
</div>
)
}
});
: 그러나,이 모든 시간을 작동합니다.
div 안에 마지막 줄을 설명해 주시겠습니까? 왜 이것이지도에 전달되는거야? – monkeyjumps
더 자세히 설명해주세요. 나는이 정확한 문제를 겪고 있으며 해결책을 완전히 이해하지 못하고있다. – sweeds
@monkeyjumps 이것은 map에 전달 된 함수 내의'this'의 값이 render 함수 내부의'this'의 값과 동일한 지 확인하는 것입니다. 자세한 내용은 map의 문서를 참조하십시오. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map – Becojo