我已经在子组件的窗体上创建了。使用jquery ajax方法提交该表单后,($.ajax)我将以json格式检索一些数据。我想将该数据置于父组件的状态。那么,react.js中是否有任何方法可以将值或数据从子组件传递到其父组件?
($.ajax)
谢谢..
在没有某种Flux实现的情况下执行此操作的方法是在父元素上创建一个函数来处理来自子级的响应/数据,并将该函数作为道具传递。然后从孩子那里调用该函数。像这样:
上级:
handleResponse(data) { console.log(data) } render() { return( <div> <Child handleResponse={this.handleResponse} /> </div> ); }
然后在孩子中:
handleAjax() { $.get(url).then( (response) => { this.props.handleResponse(response) }); }
所有这些都假定使用ES6语法。使用ES5,您将必须正确使用bind或var that = this确定所有范围。
bind
var that = this