失败的道具类型:提供了类型为“function”的无效道具,预期有一个 ReactElement

AND*_*849 3 reactive-programming reactjs react-redux

我正在尝试使用 react v4 和 axios 发帖,我正在按照本教程进行操作,并且完全按照他说的做了,但是出现错误:也许是因为我使用的是另一个版本的 react,如何修复它?

失败丙类型:无效支柱userSignupRequest型的function 供给SignUp,预期单个ReactElement。

这是我的代码:

import React from 'react';
import SignUpForm from './SignUpForm';
import { connect } from 'react-redux';
import { userSignupRequest } from '../../actions/signupActions';
import PropTypes from 'prop-types';

class SignUp extends React.Component{
  render(){
    const { userSignupRequest } = this.props;
    return(
        <SignUpForm userSignupRequest={userSignupRequest}/>
    );
  }
}


SignUp.propTypes = {
  userSignupRequest: PropTypes.element.isRequired
}

export default connect(null, { userSignupRequest })(SignUp);
Run Code Online (Sandbox Code Playgroud)

注册操作:

import axios from 'axios';
import Constants from '../components/Constants'

export function userSignupRequest(userData) {
  return dispatch => {
    return axios.post(Constants.URL_REGISTER, userData);
  }
}
Run Code Online (Sandbox Code Playgroud)

Col*_*rdo 9

你的意思elementfunc在你的 PropTypes 中有而不是?

SignUp.propTypes = {
  userSignupRequest: PropTypes.func.isRequired
}
Run Code Online (Sandbox Code Playgroud)