React中父子组件传值
一.首先我们先来看父组件向子组件传值
1.1 我们要明白父组件 --> 子组件 是通过props这个属性来传值的
我们来看父组件的代码
import React from 'react';
import Son1 from './Son1';
class Father extends React.Component{
constructor(){
super(); }
render(){
return(
<React.Fragment>
{/* 我们在这里引入子组件 并声明一个属性str 给他传一个hello */}
<Son1 str='hello'></Son1>
</React.Fragment>
)
} }
export default Father;
接着看子组件
import React from 'react';
class Son1 extends React.Component{
constructor(){
super()
} render(){
return(
<React.Fragment>
{/* 子组件通过props 这个属性来接受父组件传过来的str */}
{this.props.str}
</React.Fragment>
)
} }
export default Son1;
页面上就可以得到 hello这个值

二. 子组件向父组件传值
在这里我们分为4个步骤
2.1、在父组件中声明一个函数,用于接收子组件的传值
2.2、通过组件属性的方法,把函数传递给子组件
先看父组件的代码
import React from 'react';
import Son1 from './Son1';
class Father extends React.Component{
constructor(){
super(); }
// 1、在这里中声明一个函数,用于接收子组件的传值
message(msg){
// 通过形参接受到子组件的值并打印到控制台
console.log(msg)
}
render(){
return(
<React.Fragment>
{/* 在这里声明一个msg属性,通过组件属性的方法,把函数传递给子组件 */}
<Son1 msg={this.message}></Son1>
</React.Fragment>
)
} }
export default Father;
2.3、在子组件中通过props属性调用父组件的函数,并通过参数传值
import React from 'react';
class Son1 extends React.Component{
constructor(){
super()
}
render(){
return(
<React.Fragment>
{/* 在子组件中通过props属性调用父组件的函数,并通过参数传值 */}
{this.props.msg('hello Word')}
</React.Fragment>
)
} }
export default Son1;
2.4、在父组件中的函数通过形参接收子组件的传值
这样就可以看到控制台打印的效果

React中父子组件传值的更多相关文章
- 使用react进行父子组件传值
在单页面里面,父子组件传值是比较常见的,之前一直用vue开发,今天研究了一下react的父子组件传值,和vue差不多的思路,父组件向子组件传值,父通过初始state,子组件通过this.props进行 ...
- React中父子组件间的通信问题
1.https://blog.csdn.net/sinat_17775997/article/details/59103173 (React中父子组件间的通信问题)
- React中父子组件数据传递
Vue.js中父子组件数据传递:Props Down , Events Up Angular中父子组件数据传递:Props Down, Events Up React中父子组件数据传递:Prop ...
- React中兄弟组件传值
兄弟组件传值 实际上是间接的通过第三方来实现传值,举例,第一个儿子把值传给父亲,父亲在把这个值传给第二个儿子,这样就实现了兄弟组件传值 来看代码: 父组件代码 import React from 'r ...
- vue 中父子组件传值:props和$emit
更新----------- 1 父组件向子组件传值:通过props数组: 在vue-cli Login.vue父组件中有AcceptAndRefuse.vue子组件,首先import进子组件hello ...
- vue中父子组件传值问题 通过props 和 $emit()方法
(代码在最后) 1.父组件给子组件传值直接通过props,听着很简单,但是对于初学者来说还是比较难以理解的,今天小白通过自己的实践操作结合代码分析一下 案例 把模态框单独的抽离出来,当作一个组件 第 ...
- 五、react中父子组件间如何传值
1.父组件向子组件传递数据:父组件绑定属性值传给子组件,子组件通过this.props()接受. 2.子组件向父组件传递数据:子组件绑定一个方法,方法中通过this.props.父组件方法名(参数)传 ...
- 九、React中的组件、父子组件、React props父组件给子组件传值、子组件给父组件传值、父组件中通过refs获取子组件属性和方法
一.概述 React中的组件: 解决html 标签构建应用的不足. 使用组件的好处:把公共的功能单独抽离成一个文件作为一个组件,哪里里使用哪里引入. [父子组件]:组件的相互调用中,我们把调用者称为父 ...
- 十八、React react-router4.x中:实现路由模块化、以及嵌套路由父子组件传值
一.路由模块化(用字典定义路由,然后循环出来) 1.官方文档参考 [官方文档]https://reacttraining.com/react-router/web/guides/quick-start ...
随机推荐
- pandas-05 map和replace操作
# pandas-05 map和replace操作 map可以做一个映射,对于操作大型的dataframe来说就非常方便了,而且也不容易出错.replace的作用是替换,这个很好理解. import ...
- 【开发笔记】- Java中关于HashMap的元素遍历的顺序问题
今天在使用如下的方式遍历HashMap里面的元素时 for (Entry<String, String> entry : hashMap.entrySet()) { MessageForm ...
- koa2--session的实现
koa2原生功能只提供了cookie的操作,但是没有提供session操作.session只能自己实现或者通过第三方中间件实现. 如果session数据量很小,可以直接存在内存中 如果session数 ...
- idea忽略并隐藏.idea文件夹.iml文件不提交到svn
File-->setting-->Editor-->File Types 选中.boringignore,添加*.iml;.idea;即可
- synchronized底层实现原理
基于进入和退出管程(Monitor)对象实现,无论显式(Monitorenter Monitorexit)还是隐式都是如此.同步方法并不是由monitorenter和monitorexit ...
- 基于gtk的imshow:用gtk读取并显示图像
gtk实现imshow,最naive的做法是用gtk的组件去读取图像,然后show出来:后续再考虑用GTK显示用别的方式例如stb image读取的图像.先前基于GDI实现imshow时也是这一思路, ...
- manjaro跳坑记
why manjaro 有两个原因: 我的电脑上win10+ubuntu16.04,ubuntu上跑一个程序会crash导致重启,不知道如何排查,想换个系统试试.(别人机器上同样G++版本不会cras ...
- node基础学习——http基础知识-02-http响应数据流
<一> 发送服务器端响应流 在createServer()方法的参数值回调函数或服务器对象的request事件函数中的第二个参数值为一个http.ServerResponse对象,可以利用 ...
- PAT甲级1005水题飘过
题目分析:用一个字符串输入之后遍历每一位求和后,不断%10获取最后一位存储下来,逆序用对应的英文单词输出(注意输入为0的情况) #include<iostream> #include< ...
- 17、Learning and Transferring IDs Representation in E-commerce笔记
一.摘要 电子商务场景:主要组成部分(用户ID.商品ID.产品ID.商店ID.品牌ID.类别ID等) 传统的编码两个缺陷:如onehot,(1)存在稀疏性问题,维度高(2)不能反映关系,以两个不同的i ...