[英]React-router-dom's Redirect not doing anything
我正在开发一个身份验证系统(我目前正在测试而不发送数据) <Redirect to"(path)"> 没有做任何事情。 我在这里做错了什么吗?
import React, { Component } from 'react';
import { withRouter, Link, Redirect, useHistory } from 'react-router-dom';
class Login extends Component {
constructor(props) {
super(props);
this.state = {
email: '',
password: '',
};
}
login(event) {
event.preventDefault();
return <Redirect to="/home"></Redirect>
}
render() {
return (
<div className="login">
<img src="images/tradecast-logo.png"/>
<h2>Employee Management System</h2>
<form onSubmit={this.login}>
<h1>Inloggen</h1>
<p>E-mail</p>
<input type="text" name="email" placeholder="E-mail" />
<p>Wachtwoord</p>
<input type="password" name="password" placeholder="Wachtwoord"/>
<Link to="/forgot-password">Wachtwoord vergeten</Link>
<div className="btns">
<button type="submit">Aanmelden</button>
<Link className="btn-register" to="/register">Registreren</Link>
</div>
</form>
<p className="copyright">© {new Date().getFullYear()} TradeCast Employee Management by Jens Bouma</p>
</div>
)
}
}
export default withRouter(Login);
正如这里所说的,重定向必须呈现而不仅仅是返回。 作为替代方案,由于您使用的是类组件,您可以使用this.props.history.push("/home”)
代替。
重定向将在渲染函数 this.context.history.push("/home") 中起作用
this.context.history.push("/home")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.