Also ich versuche, den Status zu einer Frage-Komponente zu übergeben. Aus irgendeinem Grund wird der Staat einfach nicht weitergegeben. Ich bin sicher, es ist etwas Offensichtliches, dass ich vermisse, aber ich könnte einen anderen Satz von Augen zu diesem Thema verwenden. Vielen Dank!Requisiten werden nicht an die untergeordnete Komponente übergeben
import React from 'react';
import Question from './Question';
import firebase from 'firebase';
var questions = [{ qtext : "", options: [], id:0, answer: ""}, { qtext : "", options: [], id:1, answer: "" }];
const QuizBuilderForm = React.createClass({
getInitialState: function() {
return {
questions
};
},
addQuestion: function(questions, id) {
questions = this.state.questions;
questions.push({ qtext : "", options: [], id: this.state.questions.length });
this.setState({
questions: questions
});
},
handleSubmit: function(event) {
event.preventDefault();
console.log(this.state.questions);
this.firebaseRef = firebase.database().ref('quizzes');
this.firebaseRef.push({
question: this.state.questions
});
this.refs.form.reset();
this.setState({
question: [{ qtext : "", options:[], id: 0, answer: ""}, {qtext: "", options:[], id: 1, answer: ""}]
});
},
render: function() {
{this.state.questions.map((question, index) => {
<Question {...this.props} key={index} index={index} question={question} />
console.log(question);
}
)};
return (
<form className="quiz-form" onSubmit={this.handleSubmit} ref="form">
<Question />
<button type="button" className="add-question" onClick= {this.addQuestion} disabled={this.state.questions.length === 5}>{this.state.questions.length < 5 ? 'Add another question' : 'Question limit reached!'}</button>
<button type="submit">Create Quiz</button>
</form>
);
}
});
export default QuizBuilderForm;
Vielen Dank! Für Ihre Rendermethode erhalte ich einen Fehler für ein unerwartetes Token. Es beschwert sich über das erste "." in '{this.state.questons.map ....}'. – maxwellgover
'var fragen = this.state.questions.map ((Frage, Index) => { console.log (question); }); ' müssen nur die Blöcke entfernen, die die gesamte Funktion umhüllen –
finalfreq
@finalfreq Wow. OK. Vielen Dank. – maxwellgover