How to connect redux to react

In this chapter, you will learn how to connect redux to react. In the previous chapters, we learned how to create a store and reducers in redux. Now its time connect the store to our react application in order to use the state. Now let’s see a below example.
Connect redux to react:
We can use the method connect which can be imported from the redux-react. The connect method 2 objects, the first one is to ma the state to the props and the second one is to map the dispatch to props.
import React, { useState } from 'react';
import { connect } from 'react-redux';
import { emailValidator, passwordValidator } from '../../utils/validation';
const LoginForm = (props) => {
const [email, setEmail] = useState({ value: '', error: '', class: '' });
const [password, setPassword] = useState({ value: '', error: '', class: '' });
const [isFormValid, setisFormValid] = useState(false);
const validateForm = () => {
const validateEmail = emailValidator(email.value);
const validatePassword = passwordValidator(password.value);
if (validateEmail) {
setEmail({ ...email, error: validateEmail.message, class: validateEmail.class });
setisFormValid(false);
return false;
}
if (validatePassword) {
setPassword({ ...password, error: validatePassword, class: validatePassword.class });
setisFormValid(false);
return false;
}
setisFormValid(true);
return true;
}
return (
<div className='form'>
<h1>Enter credentials</h1>
<input
type="text"
name="email"
value={email.value}
className={email.class}
placeholder="Email"
onChange={e => setEmail({ value: (e.target.value), error: '', class: '' })}
onBlur={()=>validateForm()}
/>
<input
type="password"
name="password"
className={password.class}
value={password.value}
onChange={e => setPassword({ value: (e.target.value), error: '', class: '' })}
placeholder="Password"
onBlur={()=>validateForm()}
/>
<button disabled={!isFormValid} onClick={props.onLogin}>Login</button>
</div>
)
}
const mapStateToProps = state => {
return {
isEmployeeLoggedIn: state.login.isEmployeeLoggedIn
}
}
const mapDispatchToProps = dispatch => {
return {
onLogin: () => dispatch({
type: 'LOGIN'
})
}
}
export default connect(mapStateToProps, mapDispatchToProps)(LoginForm);