React中函数组件向类组件传递函数触发失败如何解决
问题原因
- 类组件接收的父组件传递属性全部挂载在
this.props对象下,你之前的写法引用的路径错误:this.testFun:尝试读取组件实例自身的testFun属性,不存在this.state.testFun:尝试读取组件state中存储的testFun,你没有将传入的函数存入state,所以不存在- 直接写
testFun:尝试读取当前作用域下的testFun变量,不存在
修复方案
将子组件中按钮的onClick绑定代码修改为:
<Button onClick={this.props.testFun}>关闭</Button>
如果后续需要给testFun传递自定义参数,可以写成箭头函数包裹的形式:
<Button onClick={() => this.props.testFun('自定义参数')}>关闭</Button>
内容的提问来源于stack exchange,提问作者F0cus
相关产品推荐
相关产品推荐

