React Hooks обновляет реквизит от Reaction-Redux - PullRequest
1 голос
/ 13 мая 2019

У меня проблема с обновлением реквизита с помощью Redux. Я использую промежуточное программное обеспечение redux-обещание, и делаю запрос входа в систему. Мой хук получает initialState. Я вижу, что диспетчер и редуктор корректно обновляются, когда я console.log в функции mapStateToProps. Однако реквизиты никогда не обновляются с помощью приставки.

const Login = (props) => {

const [email, updateEmail] = useState('')
    const [password, updatePassword] = useState('')
    const [firstName, updateFirstName] = useState('')
    const [lastName, updateLastName] = useState('')
    const [loginToggle, updateLoginToggle] = useState(true)

async function handleLogin() {
    const loginInfo = {email, password}
    await props.loginUser(loginInfo)
    if (props.user.loggedIn) props.history.push('/dashboard');
}

    return (
        <div className="login-page">
            <div className="login-register-container"> 
                { loginToggle ?(  
                <div className="login-container">
                    <h2>Login</h2>
                    <input placeholder='Email' value={email} onChange={e => 
 updateEmail(e.target.value)} />
                    <input placeholder='Password' value={password} onChange={e => updatePassword(e.target.value)} />
                    <button onClick={handleLogin}> Login </button>
                    <p style={{cursor:"pointer"}} onClick={() => updateLoginToggle(false)}> need to register?</p>
                </div>
                ):(
                <div className="register-container">
                    <h2>Register</h2>
                    <input placeholder='First Name' value={firstName} onChange={e => updateFirstName(e.target.value)} />
                    <input placeholder='Last Name' value={lastName} onChange={e => updateLastName(e.target.value)} />
                    <input placeholder='Email' value={email} onChange={e => updateEmail(e.target.value)} />
                    <input placeholder='Password' value={password} onChange={e => updatePassword(e.target.value)} />
                    <button onClick={handleRegister}> Register </button>
                    <p style={{cursor:"pointer"}} onClick={() => updateLoginToggle(true)}> already have login?</p>
                </div>
                )}
            </div>
        </div>
    )
}

function mapStateToProps(reduxState) {
    console.log(reduxState)
    return {
        user: reduxState.user
    }
};


export default connect(mapStateToProps, {loginUser, getUser})(Login)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...