加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

react子组件如何向父组件传值

发布时间:2020-12-15 07:25:01 所属栏目:百科 来源:网络整理
导读:转自:http://blog.csdn.net/qizhiqq/article/details/52384554 黑色框为父,绿色框为子,红色框为孙子。父向子孙传值用props;子孙向父传值,要在父设置接收函数和state,同时用props将函数名传入子孙。(总的来说就是给子组件传入父组件的方法,在子组件中

转自:http://blog.csdn.net/qizhiqq/article/details/52384554

黑色框为父,绿色框为子,红色框为孙子。父向子孙传值用props;子孙向父传值,要在父设置接收函数和state,同时用props将函数名传入子孙。(总的来说就是给子组件传入父组件的方法,在子组件中调用)

var Grandson = React.createClass({
    render: function(){
        return (
            <div style={{border: "1px solid red",margin: 10px"}}>{this.props.name}:
                <select onChange={this.props.handleSelect}>
                    <option value=">男</option>
                    <option value=">女</option>
                </select>
            </div>
        )
    }
});
var Child = React.createClass({
    render: function(){
        1px solid green"}}>
                {this.props.name}:<input onChange={this.props.handleVal}/>
                <Grandson name=性别" handleSelect={this.props.handleSelect}/>
            </div>
        )
    }
});
var Parent = React.createClass({
    getInitialState: function(){
        return {
            username: '',sex: ''
        }
    },handleVal: function(event){
        this.setState({username: event.target.value});
    },handleSelect: function(event) {
        this.setState({sex: 1px solid #000"}}>
                <div>用户姓名:{this.state.username}</div>
                <div>用户性别:{this.state.sex}</div>
                <Child name=姓名" handleVal={this.handleVal} handleSelect={this.handleSelect}/>
            </div>
        )
    }
});
React.render(
  <Parent />,document.getElementById('test')
);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读