zoukankan      html  css  js  c++  java
  • (十)React的子传父 及 优化编写

    (十)React的子传父 及 优化编写

    子传父:

    其实就是事件回传,在父传子的基础上 将传递的参数改为函数体 子组件在props上进行数据的回传

    //引用子组件
    <child getData={ this.getData} />
    getData = (value)=>{
        console.log(value)
    }
    //父组件 
    this.props.getData('回传的值')
    

    修改对象值的方式

    const { objData } =  this.state
    obj.map( (item) = > {
       if ( item.id === '1' ){
        return { ...item, a:'1' }   //什么意思呢  就是你在获取到对象之后的时候你需要进行状态的修改  {...objData} 的运算符  可以进行赋值 在a:'1' 可以修改的其中的值
       }
    )
    

    修改数组的方式

    const { arreyData } = this.state
    const newData = [...arreyData , Objdata]
    this,setState({arreyData, newData})
    

    对数组进行条件统计的reduce

    reduce( ) 能穿两个参数 第一个是一个函数 ,第二个是从几开始 (初始值)
    const doneCount = tools.reduce((prev, item) =>{return prev + (item.done ? 1 : 0) },0)
    函数本身能传两个参数 第一个就是 pre 之前的值 (上一次的返回值) item(对谁进行遍历 就是一个一个的对象) (十)React的子传父 及 优化编写

    子传父:

    其实就是事件回传,在父传子的基础上 将传递的参数改为函数体 子组件在props上进行数据的回传

    //引用子组件
    <child getData={ this.getData} />
    getData = (value)=>{
        console.log(value)
    }
    //父组件 
    this.props.getData('回传的值')
    

    修改对象值的方式

    const { objData } =  this.state
    obj.map( (item) = > {
       if ( item.id === '1' ){
        return { ...item, a:'1' }   //什么意思呢  就是你在获取到对象之后的时候你需要进行状态的修改  {...objData} 的运算符  可以进行赋值 在a:'1' 可以修改的其中的值
       }
    )
    

    修改数组的方式

    const { arreyData } = this.state
    const newData = [...arreyData , Objdata]
    this,setState({arreyData, newData})
    

    对数组进行条件统计的reduce

    reduce( ) 能穿两个参数 第一个是一个函数 ,第二个是从几开始 (初始值)
    const doneCount = tools.reduce((prev, item) =>{return prev + (item.done ? 1 : 0) },0)
    函数本身能传两个参数 第一个就是 pre 之前的值 (上一次的返回值) item(对谁进行遍历 就是一个一个的对象)

    咫尺远近却无法靠近的那个你,才敢让你发觉你并不孤寂
  • 相关阅读:
    高性能网站优化——兼容
    高性能网站优化——开发
    leetcode刷题日记: 19.删除链表的倒数第k个节点
    大数据处理技术学习
    <java复习>返回可变对象引用的get方法要点
    <C++网络编程随笔>常用Socket函数总结
    <leetcode每日一题>数组中的第K个最大元素
    <leetcode每日一题>二叉树的LCA查找
    codeforce round615 div3 B
    暑假作业竟然如此芳香(hdu4145枚举+贪心)
  • 原文地址:https://www.cnblogs.com/tcz1018/p/15433638.html
Copyright © 2011-2022 走看看