【发布时间】:2020-05-07 02:27:56
【问题描述】:
我在 React 中的前端不断将未定义的值传递给 Node.js 中的后端服务器。我正在尝试创建一个注册容器,它将在数据库中创建一个帐户。
这是我的点击功能:
register(event) {
event.preventDefault();
let newUser = {
name : this.state.name,
password : this.state.password,
email : this.state.email
}
Axios.post('http://localhost:2999/Join', newUser).then((response) => {
console.log(response.data);
if (response.data.success) {
console.log("Successful Register");
this.props.close();
} else {
console.log("Failed to Register");
console.log(response.data.error);
}
});
}
我目前已经设置了表单中每个框的状态通过 onChange 函数更新:
handleNameChange(event) {
this.setState({name : event.target.value});
}
handlePwChange(event) {
this.setState({password : event.target.value});
}
handleEmailChange(event) {
this.setState({email : event.target.value});
}
这是我的 Server.js 中的 POST 函数:
app.post('/Join', (req, res) => {
const name = req.params.name;
console.log(name);
const password = req.params.password;
console.log(password);
const email = req.params.email;
console.log(email);
const REGISTER_USER_QUERY = `INSERT INTO users (name, password, email) VALUES ('${name}', '${password}', '${email}');`;
connection.query(REGISTER_USER_QUERY, (err, results) => {
if (err) {
return res.send(err);
} else {
return res.send('Successfully registered player');
}
});
});
【问题讨论】:
标签: mysql node.js reactjs express axios