Я хочу отправить состояние от реакции на редукс-хуки, как я это делаю - PullRequest
0 голосов
/ 20 сентября 2019

У меня немного избыточно, поэтому я использую эти удобные хуки

У меня есть несколько файлов

Это мой редуктор

import UserName from '../NAVBAR/log_in'
const initialState = {
    username: UserName
};

export function userReducer(state = initialState, action) {
    console.log('USER-action', action);
    switch (action.type) {
        case 'USER_NAME':
            return {
                ...state,
                username: action.payload
            };
        default:
            return state;
    }
}

Это мой логин

Я поставил >>>>>>>, чтобы сделать его понятнее

function Login(props) {
    var classes = useStyles();
    var [username, setUsername] = useState('')
    var [password, setPassword] = useState('')

    var dispatch = useDispatch();

    >>>>>>const UserName = useSelector((state) => state.username);

       >>>>>>>>>> Sign in:-{props.UserName}</Typography>
                        <TextField
                            variant="outlined"
                            margin="normal"
                            fullWidth
                            value={username}
                            onChange={(e) => setUsername(e.target.value)}
                 >>>>>>>>>>>onClick={() => dispatch({ type: 'USER_NAME', payload: username })}

                        />

ИЗОБРАЖЕНИЕ Посмотреть сообщение на imgur.com

Есть что-то, что я делаю не так?

А если вам понадобится картинка или что-то еще, я выложу

1 Ответ

0 голосов
/ 20 сентября 2019

При такой настройке локальное состояние и состояние избыточности кажутся избыточными.

Либо измените ваш onChange, чтобы отправить ваше действие, либо добавьте кнопку отправки, которая отправляет ваши действия, чтобы обновить избыточность.Но если это так сложно, как ваша форма, я бы просто пропустил локальное состояние, чтобы ваша форма читала и обновляла только лексему.

...