import React, { Component } from "react"; import Input from "../component/Input"; import { login } from "../../services/loginService"; import { connect } from "react-redux"; import { loginSuccess } from "../../redux/authActions"; class LoginPage extends Component { state = { userEmail: null, userPassword: null, error: null, }; onChange = (event) => { const { name, value } = event.target; this.setState({ [name]: value, error: null, }); }; onClickLogin = async (event) => { event.preventDefault(); const { userEmail, userPassword } = this.state; const creds = { username: userEmail, password: userPassword, }; this.setState({ error: null }); try { const response = await login(creds); this.props.history.push("/"); const authState = { ...response.data, userPassword: userPassword, }; this.props.onLoginSuccess(authState); } catch (apiError) { this.setState({ error: apiError.response.data.message, }); } }; render() { const buttonEnabled = this.state.userEmail && this.state.userPassword; return (

Giriş Sayfası

{this.state.error && (
Bilgilerinizi kontrol ediniz!
)}
); } } const mapDispatchToProps = (dispatch) => { return { onLoginSuccess: (authState) => { return dispatch(loginSuccess(authState)); }, }; }; export default connect(null, mapDispatchToProps)(LoginPage);