浅谈react hook (父子传参)

import React from "react";

import ReactDOM from "react-dom";

import "./index.css";

//1.父子间传参

class Son extends React.Component {

    constructor(props) {

        super(props);

        this.state = {

        }

      }

    componentDidMount() {

        

    }

    // 二,子传父 以回调函数的方式传递

    handelClick(i){

        console.log(i);

        this.props.deleItem(i)

    }

    render() {

        let {data}=this.props

        return (

            <div>

                <ul>

                    {data.map((item,index)=>{

                        return (

                            <li key={index}>{index+1}{item} <button onClick={()=>{

                                this.handelClick(index)

                            }}>删除</button></li>

                        )

 

                    })}

                </ul>

                <div>当前{data.length}条</div>

               

            </div>

               

      )

    }

    

}

 

class App extends React.Component {

    constructor(props) {

        super(props);

        this.state = {

            list:['大西瓜','大香蕉','大萝卜','大白菜']

        }

      }

    componentDidMount() {

        

    }

    dels=(index)=>{

        let data= this.state.list

        data.splice(index,1)

        this.setState({data})

    }

    render() {

        return (

            <div>

                {/*一, 父传子  data={this.state.list} 以属性的方式传递 */}

               <Son   deleItem={this.dels} data={this.state.list}></Son>

            </div>

               

      )

    }

    

}

// 三,渲染组件(和无状态类似)

ReactDOM.render(<App />, document.getElementById("root"));

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值