Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >react 父子传值_react 父子组件传值 兄弟组件传值「建议收藏」

react 父子传值_react 父子组件传值 兄弟组件传值「建议收藏」

作者头像
全栈程序员站长
发布于 2022-08-27 04:41:58
发布于 2022-08-27 04:41:58
2.7K0
举报

大家好,又见面了,我是你们的朋友全栈君。

一、子向父组件传值

方法一:

父组件

//方法

parentFn(data1, data2, e) {

// 按照参数排列 最后一个是event

console.log(data1, data2, e) //输出 1 2 event内容

}

//渲染

render() {

return (

//子组件

)

}

子组件

// 渲染

render() {

return (

//可以直接获取props调用 也可以重新定义在方法中调用

子组件

);

}

方法二:

参考 通过ref获取子组件的值 可以看 `二、子组件向父组件传方法二` 一样的意思

二、子组件向父组件传方法

方法一:传值绑定this

父组件

//父 – 点击调用 子

clickChild = (e) => {

this.child.myChild()

}

//渲染

render() {

return (

//子组件

{this.child = ref}} }>

//点击调用

click

)

}

子组件

//周期

componentDidMount() {

this.props.onRef(this)

}

//给父组件用的方法

myChild = () => log(‘父调子fn’)

// 渲染

render() {

return (

子组件

);

}

方法二:直接绑定ref

父组件

//父 – 点击调用 子

clickChild = (e) => {

this.refs.SideContent.myChild();

}

//渲染

render() {

return (

//子组件

//点击调用

click

)

}

子组件

//给父组件用的方法

myChild = () => log(‘父调子fn’)

// 渲染

render() {

return (

子组件

);

}

三、父向子传值

父组件

//渲染

render() {

return (

//子组件

)

}

子组件

// 渲染

render() {

return (

子组件 {this.props.name}

);

}

四、父向子传方法

参考 `一、子向父组件传值方法一` 一样的 传个方法过去 子组件调用了 就是掉了父的方法了

五、兄弟组件传值 / 各种组件传值 封装的像vue的Bus中央事件总线 及其优秀

有兴趣的可以看一下 https://www.cnblogs.com/chen-yi-yi/p/11152391.html vue的bus传值

记得两个组件中 都需要引入js 使用方法如下

传值

eventProxy.trigger(‘名字’, 值)

取值

eventProxy.on(‘名字’, 值 => {

log(值)

this.setState({

//更新的state 或者干点别的

}, () => {

//做你想做的事

})

})

如果传多个值 可以拼成对象 或者 写成数组 这个js不支持序列传值

例如:

传值

eventProxy.trigger(‘名字’, [‘1′,’2’])

取值

eventProxy.on(‘名字’, resArr => {

log resArr[0] //输出1

log resArr[1] //输出2

})

这个封装的js也不是我写的 不记得哪位大佬了 几个月以前使用的 如果是你的 可以留下链接 我在贴原处

js 地址:我放在另一个页 不然太多了

https://www.cnblogs.com/chen-yi-yi/p/13566856.html

这个方法我特别喜欢~~~ 经常使用

六、redux

简单的传值满足不了你的需求 或者 当多个组件共用一个数据 频繁传值时 使用redux 状态管理器

第一步安装:npm install –save redux

第二步: -‘嘻嘻’ -下次单独写一篇~~~~

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145708.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
React 开发要知道的 34 个技巧
原理:子组件里面利用 props 获取父组件方法直接调用,从而改变父组件的值 注意: 此方法和 props 大同小异,都是 props 的应用,所以在源码中没有举例
前端老王
2020/09/23
1.6K0
React 开发必须知道的 34 个技巧【近1W字】
React 是前端三大框架之一,在面试和开发中也是一项技能; 本文从实际开发中总结了 React 开发的一些技巧技巧,适合 React 初学或者有一定项目经验的同学; 万字长文,建议收藏。 序列文章:Vue 开发必须知道的 36 个技巧【近1W字】
火狼1
2019/11/13
3.6K0
React父子组件传值
文章目录 写在前面 示例图1 示例图2 功能描述 代码实现 注意的点⚠️ 写在前面 今天我们记录一下react的父子组件的传值,用到的还是比较多的,我们做一个简单的demo进行说明 示例图1 没有数据的情况下显示形式 示例图2 有数据的情况显示形式 功能描述 首先启动以后进入没有数据的view,然后我们输入任意字符,进行添加,会在下面NoData区域进行显示,鼠标放置上面的时候提示删除该项,鼠标点击,进行该项的删除!这里的两个组件分别是父组件包括input和button,子组件负责进行渲
何处锦绣不灰堆
2022/05/09
6820
React父子组件传值
react中类组件传值,函数组件传值:父子组件传值、非父子组件传值[通俗易懂]
函数组件中我们一般情况下使用useEffect实现数据的请求 // useEffect Hook 看做 componentDidMount,componentDidUpdate 和 componentWillUnmount (加载,更新,卸载)这三个函数的组合。 语法格式: useEffect(()=>{ },[])
全栈程序员站长
2022/08/30
6.9K0
Vue 父子组件传值以及父调子方法和子调父方法
在 Vue.js 中,组件通信是一个至关重要的概念。父子组件之间的数据传递和方法调用是常见的需求,它们构建了一个强大的交互体验。
一个正经的程序员
2023/08/30
3.4K0
Vue 父子组件传值以及父调子方法和子调父方法
父子组件传值方法
1. 子组件(<Invitation>)定义一个变量visible 2 . 父组件使用ref接收
全栈程序员站长
2022/08/29
5830
vue父子组件传值
父组件可以在引用子组件的时候, 通过属性绑定(v-bind:) 的形式, 把需要传递给子组件的数据,以属性绑定的形式,传递到子组件内部,供子组件使用。
砖业洋__
2023/05/06
5360
vue父子组件传值
Vue父子组件之间的传值及父子组件之间相互调用属性或方法
父组件向子组件传值是通过属性的方式 传值,传的值可以是任意类型,甚至可以是父组件的方法或者父组件对象本身。为方便理解可以简单将父组件向子组件传值按以下步骤实现。
赵云龙龙
2020/02/24
16.5K0
vue通信-组件传值
通过以上三种方式, 我想你应该能解决绝大多数父子组件通信的场景了,但让我们再仔细考虑一下上面的通信场景,就会发现它们还可能存在的问题: 从子组件向父组件传递数据时,父子组件中的数据仍不是每时每刻都同步的,
leader755
2022/03/09
4.2K0
vue通信-组件传值
React中组件间通信的方式
props适用于父子组件的通信,props以单向数据流的形式可以很好的完成父子组件的通信,所谓单向数据流,就是数据只能通过props由父组件流向子组件,而子组件并不能通过修改props传过来的数据修改父组件的相应状态,所有的props都使得其父子props之间形成了一个单向下行绑定,父级props的更新会向下流动到子组件中,但是反过来则不行,这样会防止从子组件意外改变父级组件的状态,导致难以理解数据的流向而提高了项目维护难度。实际上如果传入一个基本数据类型给子组件,在子组件中修改这个值的话React中会抛出异常,如果对于子组件传入一个引用类型的对象的话,在子组件中修改是不会出现任何提示的,但这两种情况都属于改变了父子组件的单向数据流,是不符合可维护的设计方式的。 我们通常会有需要更改父组件值的需求,对此我们可以在父组件自定义一个处理接受变化状态的逻辑,然后在子组件中如若相关的状态改变时,就触发父组件的逻辑处理事件,在React中props是能够接受任意的入参,此时我们通过props传递一个函数在子组件触发并且传递值到父组件的实例去修改父组件的state。
WindRunnerMax
2021/02/04
2.6K0
React父子组件传值
版权声明:原创不易,多多珍惜 https://blog.csdn.net/wonaixiaoshenshen/article/details/89221569
我乃小神神
2019/07/02
7450
关于React组件之间如何优雅地传值的探讨
闲话不多说,开篇撸代码,你可以会看到类似如下的结构: import React, { Component } from 'react'; // 父组件 class Parent extends Component { constructor() { super(); this.state = { color: 'red' }; } render() { return <Child1 { ...this.props } />
糊糊糊糊糊了
2018/05/09
1.4K0
Vue常用传值方式、父传子、子传父、非父子组件传值
在Vue的框架开发的项目过程中,经常会用到组件来管理不同的功能,有一些公共的组件会被提取出来。这时必然会产生一些疑问和需求?比如一个组件调用另一个组件作为自己的子组件,那么我们如何进行给子组件进行传值呢?如果是电商网站系统的开发,还会涉及到购物车的选项,这时候就会涉及到非父子组件传值的情况。当然你也可以用Vuex状态管理工具来实现,这部分我们后续会单独介绍。我先给大家介绍Vue开发中常用的三种传值方式。
IT工作者
2022/02/17
4.4K0
react父子组件传值示例「建议收藏」
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145826.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/29
3040
「react进阶」年终送给react开发者的八条优化建议
笔者是一个 react 重度爱好者,在工作之余,也看了不少的 react 文章, 写了很多 react 项目 ,接下来笔者讨论一下 React 性能优化的主要方向和一些工作中的小技巧。送人玫瑰,手留余香,阅读的朋友可以给笔者点赞,关注一波 。陆续更新前端文章。
用户6835371
2021/06/01
1.9K0
「react进阶」年终送给react开发者的八条优化建议
React之父子组件传递和其它一些要点
react是R系技术栈中最基础同时也是最核心的一环,2年不到获取了62.5k star(截止到目前),足可见其给力程度。下面对一些react日常开发中的注意事项进行罗列。 React的组件生命周期 r
牧云云
2018/05/02
1.6K0
React之父子组件传递和其它一些要点
Vue非父子组件传值「建议收藏」
创建一个公共的Js文件,让其专门负责传值。就像公共的交通工具bus,data可以乘坐这辆bus到达指定的站台(相应的组件)
全栈程序员站长
2022/08/29
7530
Vue非父子组件传值「建议收藏」
VUE父子组件之间的传值,以及兄弟组件之间的传值;
vue使用中,经常会用到组件,好处是: 1、如果有一个功能很多地方都会用到,写成一个组件就不用重复写这个功能了; 2、页面内容会简洁一些;方便管控; 子组件的传值是通过props来传递数据,$emit来触发事件; 下面是一个简单的子组件props传值: 父组件的部分:
全栈程序员站长
2022/08/29
2.5K0
VUE父子组件之间的传值,以及兄弟组件之间的传值;
React--Component组件浅析
在 React 世界里,一切皆组件,我们写的 React 项目全部起源于组件。组件可以分为两类,一类是类( Class )组件,一类是函数( Function )组件。
江拥羡橙
2023/11/16
3810
React--Component组件浅析
Vue父子组件传值的方法[通俗易懂]
<input type=”button” value=”点击触发” @click=”childClick”>
全栈程序员站长
2022/08/30
1.1K0
Vue父子组件传值的方法[通俗易懂]
相关推荐
React 开发要知道的 34 个技巧
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档