首页 > 其他分享 >React学习笔记20-父子通信(子传父)

React学习笔记20-父子通信(子传父)

时间:2023-11-08 10:13:43浏览次数:47  
标签:20 子传父 render 11111 Component isShow React 组件

在React中子组件给父组件传参通过回调函数来进行。

父组件给子组件传递一个回调函数作为属性。

子组件在需要传递参数的地方调用父组件传递的回调函数即可。

import React, { Component } from 'react'
class Navbar extends Component {
    render() {
        return (
            <div style={{ backgroundColor: 'red' }}>
                <button onClick={
                    () => {
                        this.handlerClick()
                    }
                }>click</button>
                <span>navbar</span>
            </div>
        )
    }
    handlerClick() {
        this.props.event()//调用父组件传来啊的回调函数
    }
}
class Siderbar extends Component {
    render() {
        return (
            <div style={{ backgroundColor: "yellow", width: '200px' }}>
                <ul>
                    <li>11111</li>
                    <li>11111</li>
                    <li>11111</li>
                    <li>11111</li>
                    <li>11111</li>
                    <li>11111</li>
                    <li>11111</li>
                </ul>
            </div>
        )
    }
}
export default class App extends Component {
    state = {
        isShow: true
    }
    render() {
        return (
            <div>
                <Navbar event={() => {
                    console.log('event事件')
                    this.setState({
                        isShow: !this.state.isShow
                    })
                }}></Navbar>
                {this.state.isShow && <Siderbar></Siderbar>}
            </div>
        )
    }
}
/* 
        父传子:通过属性,
        子传父:通过回调函数
*/

 

标签:20,子传父,render,11111,Component,isShow,React,组件
From: https://www.cnblogs.com/SadicZhou/p/17816691.html

相关文章

  • 2008秋-计算机软件基础-实验内容
    ------------------------------------------------------------------题目:实验C语言综合复习目的:掌握函数,结构体,指针的使用,预习线性表的顺序存储(顺序表)实验内容:1看PPT, 函数,结构体,指针章节。要求: -----------------------------------------------------------......
  • 2008秋季-计算机软件基础-线性表的顺序存储(顺序表)
    引例:在一维数组中插入和删除元素//在一维数组中插入和删除元素//2008-8-31#include<stdio.h>voidmain(){//在一维数组位置Location处插入EintList[10]={0,1,2,3,4,5};intListLength=6;//表长intE=6;//被插入的元素inti;//循环变量intLocati......
  • 2008秋季-计算机软件基础-如何使用FTP下载局域网内资源
    1打开IE2在地址栏输入FTP地址ftp://194.168.0.823选择文件,复制到本机......
  • 2008秋季-线性表的链式存储(仅单链表)
    /*---------------------------------------------------------Title:单链表Date:September1,2008Fuction:单链表的初始化,创建,插入,删除,查找结点。参考PPT讲稿或者教材2.2.4节.(p56-63)----------------------------------------------------------*/#inclu......
  • 2008秋-计算机软件基础-结构体与指针复习
    //结构体与指针#include<string.h>#include<stdio.h>structstudent{intnumber;charname[10];};voidmain(){structstudenta;structstudent*ptr=&a;a.number=10;//ptr->number=10;strcpy(a.name,"li");//strcpy(ptr->......
  • 2008秋-顺序栈-顺序存储结构的栈
    /*---------------------------------------------------------Title:SequenceStack(顺序栈)顺序栈-顺序存储结构的栈请先阅读教材67页,2.3.2,2.3.3节,栈的定义及基本运算(注意以下程序为简化后的,仅供入门学习之用)-------------------------------------------------......
  • 2008秋-链栈-链式存储结构的栈
    /*---------------------------------------------------------Title:LinkStack(链栈)链栈-链式存储结构的栈请先阅读教材67页,2.3.2,2.3.4节,栈的定义及基本运算(注意以下程序为简化后的,仅供入门学习之用)----------------------------------------------------------......
  • 2008秋-计算机软件基础-循环顺序队列
    /*---------------------------------------------------------Title:SequenceQueue(顺序队列)顺序队列-顺序存储结构的队列请先阅读教材74-76页,2.4.1-2.4.3节,队列的定义及基本运算(注意:以下程序为简化后的,仅供入门学习之用)--------------------------------------......
  • 2007-多媒体教学的基础知识
    一、什么是多媒体教学?   多媒体教学是指在教学过程中,根据教学目标和教学对象的特点,通过教学设计,合理选择和运用现代教学媒体,并与传统教学手段有机组合,共同参与教学全过程,以多种媒体信息作用于学生,形成合理的教学过程结构,达到最优化的教学效果。   多媒体教学在八十年代已......
  • 2008秋季-计算机软件基础-循环链队列
    /*---------------------------------------------------------Title:LinkQueue(链队列)链队列-链式存储结构的队列请先阅读教材74-77页,2.4.1-2.4.4节,队列的定义及基本运算(注意:以下程序为简化后的,仅供入门学习之用)---------------------------------------------......