Как сохранить несколько вариантов ответа POST API React - PullRequest
0 голосов
/ 05 мая 2020

Привет, мне трудно решить, как сохранить несколько вариантов в POST API. Он работает, когда я сохраняю один, но я не знаю, что делать, когда его несколько.

это моя структура API для POST API handleAddQuestion, то форма находится под пользовательским вводом. может кто-нибудь сказать мне, что не так и что делать?

//add question
handleAddQuestion(event, testid, typeid){
    event.preventDefault();

    const {
        testQuestion,
        questionTypeId,
        testChoices,
        isCorrect,
        newIsCorrect
    } = this.state;

    const postData = {
        question: {
        testQuestion,
        questionTypeId
        },
        choices: [{
            testChoices:this.state.testChoices,
            isCorrect:this.state.isCorrect
        }]
    };
    let sessionToken = sessionStorage.getItem('session');
    let sessToken = sessionToken.replace(/\"/g, "");
    //let classid = location.state.classid;

    fetch('http://tfismartasp-001-site10.btempurl.com/api/Test/'+ testid + '/question/type/' + typeid, {

    method: 'POST',
    headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json',
        'Authorization': 'Bearer' + " " + sessToken
    },
    body: JSON.stringify(postData),
    })
    .then(response => {
        if(response.status === 400){
        return response.json();
        }else{
        this.addNotification('success', 'Success', 'All Data is Saved', 'top-right')
        this.componentDidMount();
        return response.json();
        }
    })
    .catch(err => {
        console.log("fetch error" + err);
    });

}



<form className="margin-bottom-0" onSubmit={this.handleAddQuestion}>
<div className="col-md-12 m-b-15">
<label className="control-label">Question <span className="text-danger">*</span></label>
<input type="text" className="form-control" placeholder="Question" name="testQuestion" value={this.state.testQuestion} onChange={this.handleChangeSelectType} required="" />
 </div>

<input type="text" className="form-control" placeholder="Answer" name="testChoices" value={this.state.testChoices} onChange={this.handleChange} required=""></input>
<input type="text" className="form-control" placeholder="Answer" name="testChoices" value={this.state.testChoices} onChange={this.handleChange} required=""></input>
<input type="text" className="form-control" placeholder="Answer" name="testChoices" value={this.state.testChoices} onChange={this.handleChange} required=""></input>
<input type="text" className="form-control" placeholder="Answer" name="testChoices" value={this.state.testChoices} onChange={this.handleChange} required=""></input>

<button onClick={(e) => {this.handleAddQuestion(e, location.state.testid, this.state.questionTypeId)
          this.toggleModal("modalAddQuestion")}} className="btn btn-sm btn-success">Add Question</button>
</form>

Мне нужно сохранить ЧЕТЫРЕ варианта в одном поле, которое является testChoices

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...