+-
在底部,在NavLink标记中,onClick不起作用,我只重定向到另一个页面,但它不处理SubmitHandler函数
如果删除NavLink,则submitHandler会处理,但是每当我添加React Router标签时,都不会触发
我删除了大部分代码,因为我的问题不是必需的]]
class XXX extends React.Component {
constructor() {
super();
this.state = {
username: "",
password: "",
users: [],
errors: []
};
}
submitHandler = event => {
event.preventDefault();
let check = true;
if (this.state.username == "") {
this.showValidationErr("username", "Username cannot be empty !");
check = false;
}
if (this.state.password == "") {
this.showValidationErr("password", "Password cannot be empty !");
check = false;
}
if (this.state.users.indexOf(this.state.username) != -1) {
this.showValidationErr("username", "Username already exists !");
check = false;
}
if (check) {
axios
.post("https://localhost:44314/api/Users", this.state)
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
}
};
render() {
return (
<div className="App">
<form onSubmit={this.submitHandler}>
<button type="Submit">
<NavLink to="/newsfeed" onClick={() => this.submitHandler}>
Create Account
</NavLink>
</button>
</form>
</div>
);
}
}
在底部,在NavLink标记中,onClick不起作用,我仅被重定向到另一个页面,但是它不处理commitHandler函数。如果我删除了NavLink,则SubmitHandler ...
0
投票
投票
您在这里不需要NavLink,只需使用按钮,然后单击将调用表单上使用的函数。