После ввода данных в инпут , в стейт записывается значение "compiled" так же для title , т.е если вводить false то и в title оказывается false , хотя там вводилось другое значение, в чем ошибка?
import React, {Component} from 'react'
import './AddForm.css'
import axios from 'axios';
class AddForm extends Component{
state = {
title: '',
completed: ''
}
handleChange = event => {
this.setState({ title: event.target.value, completed: event.target.value});
}
handleSubmit = event => {
event.preventDefault();
const API = ''
axios.put(API, {data: {title: this.state.title, completed: this.state.completed}})
.then(res => {
console.log(res);
})
}
render() {
return (
<div>
<form onSubmit={this.handleSubmit}>
<label>
title:
<input type="text" name="title" onChange={this.handleChange} />
</label>
<label>
completed:
<input type="text" name="completed" onChange={this.handleChange} />
</label>
<button type="submit">Add user</button>
</form>
</div>
)
}
}
export default AddForm
А что по твоему эта строка делает this.setState({ title: event.target.value, completed: event.target.value});
? В независимости от того, в какой инпут ты вводишь данные, этот код перезаписывает сразу два поля твоего состояния тем, что ты вводишь в данный момент.
В твоём случае можно сделать во так:
class AddForm extends Component {
state = {
title: "",
completed: ""
};
handleChange = event => {
if (event.target.name === "title")
this.setState({ title: event.target.value });
if (event.target.name === "completed")
this.setState({ completed: event.target.value });
};
render() {
return (
<div>
<form onSubmit={this.handleSubmit}>
<label>
title:
<input type="text" name="title" onChange={this.handleChange} />
</label>
<label>
completed:
<input type="text" name="completed" onChange={this.handleChange} />
</label>
<button type="submit">Add user</button>
</form>
</div>
);
}
}
или для разных инпутов сделать две разные функции.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Дело в том, что мой тест Passed, если я вручную нажимаю на "ОК" в алертеА если не нажимаю - он ждет до последнего, а потом Failed, и ругается на Timeout
Установил Docker Toolbox for Windows 81 В контейнеры через docker-compose установил nginx, php-fpm, php-cli, nodejs Установил symfony 4