如何解决点击与React链接
我希望当用户单击Link
时直接执行注销功能,而无需单击注销button
时不执行(2到1动作)
<Link to="/logout">logout</Link>
...
<Route path="/logout">
<logout />
</Route>
import React,{ Component } from 'react'
import { logout } from './../../services/auth.service';
import { Redirect } from 'react-router-dom';
export default class logout extends Component {
state = {
navigate: false
}
handlelogout() {
logout();
this.setState({
navigate: true
})
}
render() {
const { navigate } = this.state;
if (navigate) {
return <Redirect to="/login" push={true} />;
}
return <button onClick={() => this.handlelogout()}>logoUT</button>
}
}
我将所有login(),register(),getData(),postData()逻辑放入服务中,甚至将logout()放入auth.service.js中:
export function logout() {
localStorage.removeItem('user');
}
您知道我该怎么做“不单击按钮”注销快捷方式吗?
谢谢您的帮助。
[编辑]
<Link to="/logout" onClick={() => this.logout()}>logout</Link>
为什么React router documentation中没有提及此内容?
此解决方案不合适,因为我仍然不想使用注销组件...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。