当前位置: 首页 > 知识库问答 >
问题:

访问React组件的所有子组件

庾勇军
2023-03-14

我有react组件A,它呈现一个表。表中某一列的数据通过另一个组件B呈现,因此的子级。每当用户单击页面上的任何位置时,我希望在执行一些操作。此click事件侦听器是在A中定义的。如何从类A内循环所有s?我的组件结构如下所示:

class A extends React.Component {
   <B/>
   <B/>
   <B/>
   <B/>
};

我遇到了react.children.foreach,但当通过this.props.children将子级作为道具传递时,这很有用;例如,当代码如下所示时:

<A>some markup</A>

共有1个答案

慎芷阳
2023-03-14
const childrenProps = React.Children.map(this.props.children,
 (child) => React.cloneElement(child, {
    data : this.state,
    method : this.method.bind(this)
   // here you can pass state or method of parent component to child components
 }));

  // to access you can use this.props.data or this.props.method in child component

您需要传递包含所有子组件的{childrenProps}。

 类似资料:
  • 我在react native中有一个搜索栏组件,它在父组件中导入, SearchBar子组件具有以下元素: 是否可以访问此子组件在其中导入的父组件中的状态?提前感谢你的帮助

  • 我在用vue-cli支架做网页包 我的Vue组件结构/传家宝目前看起来如下: 应用程序 在应用程序级别,我需要一个vuejs组件方法,该方法可以将子组件的所有数据聚合到一个JSON对象中,然后发送到服务器。 有没有办法访问子组件的数据?具体来说,多层深? 如果没有,传递oberservable数据/参数的最佳实践是什么,这样当子组件修改它时,我就可以访问新的值?我试图避免组件之间的硬依赖关系,所以

  • 我倾向于使用react功能组件和钩子,因为我对react没有太多经验。我想在父功能组件中使用react dual listbox类组件。在这个父组件中,我希望能够访问子类组件的状态。最好的方法是什么? 来自https://github.com/jakezatecky/react-dual-listbox的子响应双列表框组件 包含在标准功能组件中 例如,是否可能在父组件中有一个钩子,该钩子会根据du

  • 如何从父组件中访问子组件数据?我有一个父组件“MissionPlanner ”,我想访问名为“ChosenHeroes”的子组件“chosenHeroes”数组。如果数组中有元素,我想最终呈现一个div并能够更新父数组中的数组 我不确定我是否应该使用emit()以及如何确切地使用它。我尝试制作一个自定义事件“addHero”并将其传回。但是我遇到了错误 ChosenHeroes.vue HeroP

  • 问题内容: 如果我有类似的东西 我想从我拥有的地方访问,该怎么办? 问题答案: 推荐用于16.3之前的React版本 如果无法避免,那么从React文档中提取的建议模式将是: 该 家长 转发绑定到一个功能道具 家长 。当呼叫作出反应的 儿童的 道具也将分配 孩子的 给 父母的 财产。 建议用于React> = 16.3 引用转发是一种选择加入功能,它使某些组件可以接收它们收到的引用,并将其进一步向