函数未定义错误reactjs

时间:2017-06-06 09:38:48

标签: javascript function reactjs

我在Action文件中有一个函数,需要从带有参数的componentsnent文件调用它,但在调用它时,它给出了函数未定义的错误

组件代码:

    handleClick(e){

         addinput({input1:this.refs.inp1.value,input2:this.refs.inp2.value}) // This function I have defined in action file

      }

操作文件代码:

export function addinput(myval1) {
 return {
   type: 'ADD_INPUT',
   payload: myval1
 };
}

我在控制台中遇到错误

Uncaught ReferenceError: addinput is not defined

我在这里做错了什么!!

1 个答案:

答案 0 :(得分:1)

您需要做的是从组件中的操作文件中导入函数,如

import {addinput} from './path/to/action'

我假设您的usiong redux,您可以使用connect和bindActionCreators函数将动作绑定到道具

import {connect} from 'react-redux'
import {bindActionCreators} from 'redux'

...

class MyComponentName extends React.Component{

  handleClick = (e) => {
        this.props.addinput({input1:this.refs.inp1.value,input2:this.refs.inp2.value}) 

      }
}

function mapDispatchToProps(dispatch){
     return bindActionCreators({addInput}, dispatch)
}
export default connect(null, mapDispatchToProps)(MyComponentName)