Вам необходимо удалить свойство action из формы и вызвать getPHP () при отправке формы.Кроме того, лучше иметь контролируемые входы (состояние изменения компонента при изменении входа).См. Это для получения дополнительной информации: Получить данные формы в Reactjs
<form className="form-control" onSubmit={e => this.getPHP(e)}>
<input type="text" name="username" value={this.state.username} onChange={e => this.setState({ username: e.target.value })} />
<input type="text" name="password" value={this.state.password} onChange={e => this.setState({ password: e.target.value })} />
<input type="submit" value="submit" name="submit" />
</form>
Вы можете получить доступ к значениям формы непосредственно в методе getPHP (), поскольку входы теперь контролируются:
constructor(props) {
super(props);
this.state = {
show: false,
username: '',
password: '',
};
}
getPHP(e) {
e.preventDefault();
const { username, password } = this.state;
const formData = new FormData();
formData.append('username', username);
formData.append('password', password );
fetch(`http://localhost/demo_react/api/demo.php`, {
method: 'POST',
headers: new Headers({ 'Content-Type': 'multipart/form-data' }),
body: formData,
})
.then(res => res.json())
.then(response => {
console.log('response');
console.log(response);
this.goNext();
});
}
В конце, вы можете перейти (), когда выборка будет успешной.