Действие Redux Form не определено - PullRequest
0 голосов
/ 29 октября 2019

Я пытаюсь сделать авторизацию. Я получаю данные из reduxForm, и они видны, но по какой-то причине данные не сразу попадают в функцию, а переходят к действию, и я получаю неопределенное значение. Регистрация осуществляется по тому же принципу, но ошибок нет.

Где может быть моя ошибка?

REDUX

const NewUserEror = "NewUserEror";
const RegSucces = "RegSucces";
const RegStart = "RegStart";
const RegEnd = "RegEnd";

let initialState = {
  error: null,
  loading: false
};

const registrationReducer = (state = initialState, action) => {
  switch (action.type) {
    case RegSucces:
      return {
        ...state,
        error: false
      };
    case NewUserEror:
      return {
        ...state,
        error: action.payload
      };
    case RegStart:
      return {
        ...state,
        loading: true
      };
    case RegEnd:
      return {
        ...state,
        loading: false
      };

    default:
      return state;
  }
};
export const LogInUser = data => async (
  dispatch,
  getState,
  { getFirebase }
) => {
  const firebase = getFirebase();
  dispatch({ type: RegStart });
  try {
    await firebase.auth().signInWithEmailAndPassword(data.email, data.password);
    dispatch({ type: RegSucces });
  } catch (err) {
    dispatch({ type: NewUserEror, payload: err.message });
  }
  dispatch({ type: RegEnd });
};


CONTAINER

import React from "react";
import { connect } from "react-redux";
import Login from "./login";
import LogInUser from "./../../../redux/registrationReducer"
class AuthBox extends React.Component{

  Userlogin=(formdata)=>{

    this.props.LogInUser(formdata)
  }
  render(){
    return<Login {...this.props} Userlogin={this.Userlogin}></Login>
  }
}

let mapStateToProps=(state)=>{
  return{
  loading:state.Regis.loading,
  error:state.Regis.error
  }
}



export default connect(mapStateToProps,{LogInUser})(AuthBox);



COMPONENT

const Login = props => {
  let onSubmit = formData => {
  props.Userlogin(formData);
  };
  return (
    <div className={classes.formbox}>
      <div className={classes.form}>
        <h5 className={classes.formtitle}>Вход</h5>
        <LoginForm onSubmit={onSubmit}></LoginForm>
      </div>
    </div>
  );
};

export default Login;

Ошибка

Действие не определено

ps извините за мой английский

1 Ответ

1 голос
/ 30 октября 2019

НЕ ЭКСПОРТ ПО УМОЛЧАНИЮ ДОЛЖЕН БЫТЬ В {}

import React from "react";
import { connect } from "react-redux";
import Login from "./login";

////// here
import {LogInUser} from "./../../../redux/registrationReducer"
////

class AuthBox extends React.Component{

  Userlogin=(formdata)=>{

    this.props.LogInUser(formdata)
  }
  render(){
    return<Login {...this.props} Userlogin={this.Userlogin}></Login>
  }
}

let mapStateToProps=(state)=>{
  return{
  loading:state.Regis.loading,
  error:state.Regis.error
  }
}



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