Reactjs 对重复操作调度问题作出反应?

Reactjs 对重复操作调度问题作出反应?,reactjs,redux,react-redux,redux-saga,Reactjs,Redux,React Redux,Redux Saga,这是下面的代码,我无法调用userLoginRequest。userLoginRequest只是对用户进行身份验证,我无法为userLoginRequest分派acion。我是反应和反应的新手,所以请指导我 import React, { PropTypes } from 'react'; import { connect } from 'react-redux'; import Helmet from 'react-helmet'; import { createStructuredSelec

这是下面的代码,我无法调用userLoginRequest。userLoginRequest只是对用户进行身份验证,我无法为userLoginRequest分派acion。我是反应和反应的新手,所以请指导我

import React, { PropTypes } from 'react';
import { connect } from 'react-redux';
import Helmet from 'react-helmet';
import { createStructuredSelector } from 'reselect';
import makeSelectLoginContainer from './selectors';
import Login from 'components/Login';
import { userLoginRequest } from './actions';


export class LoginContainer extends React.PureComponent { // eslint-disable-line react/prefer-stateless-function
  doLogin(username, password) {
    console.log('DoLogin', username, password);
  }
  render() {
    return (
      <div>
        <Login handleSubmit={this.doLogin}></Login>
      </div>
    );
  }
}

LoginContainer.propTypes = {
  userLoginRequest: PropTypes.func.isRequired,
};

const mapStateToProps = createStructuredSelector({
  LoginContainer: makeSelectLoginContainer(),
});


function mapDispatchToProps(dispatch) {
  return {
    userLoginRequest: (username, password) => dispatch(actions.userLoginRequest(username, password)),
  };
}

export default connect(mapStateToProps, mapDispatchToProps)(LoginContainer);
import React,{PropTypes}来自'React';
从'react redux'导入{connect};
从“反应头盔”导入头盔;
从“重新选择”导入{createStructuredSelector};
从“./selectors”导入makeSelectLoginContainer;
从“组件/登录”导入登录;
从“/actions”导入{userLoginRequest};
导出类LoginContainer扩展React.PureComponent{//eslint禁用行React/Prefere无状态函数
doLogin(用户名、密码){
log('DoLogin',用户名,密码);
}
render(){
返回(
);
}
}
LoginContainer.propTypes={
userLoginRequest:PropTypes.func.isRequired,
};
const mapStateToProps=createStructuredSelector({
LoginContainer:makeSelectLoginContainer(),
});
功能图DispatchToprops(调度){
返回{
userLoginRequest:(用户名,密码)=>dispatch(actions.userLoginRequest(用户名,密码)),
};
}
导出默认连接(MapStateTops、mapDispatchToProps)(LoginContainer);

您已经解构了您的操作模块

userLoginRequest: (username, password) => dispatch(userLoginRequest(username, password)),
或者不要破坏动作

import * as actions from './actions';

当然,您需要调用
this.props.userLoginRequest
内部
doLogin
方法:)

我看到您调用了错误的登录请求函数
handleSubmit={this.props.userLoginRequest}
,请确保登录组件将用户名、密码作为参数传递谢谢。这解决了我的问题。你能给我推荐一些网站,让我了解react和ReduxNoProblem的基本知识吗。Redux的文档实际上很好,但这个问题更多的是关于Eswhatever的基本原理。