当前位置: 首页 > 面试题库 >

React-从子DOM元素获取React组件?

施永贞
2023-03-14
问题内容

我希望能够弄清楚哪些React组件与某个DOM元素相关联。

例如,假设我有一个div,并且正在使用React渲染整个应用程序。div必须由React组件呈现-但是哪一个呢?

我知道React提供了方法“ getDOMNode ”来获取与React组件相关联的DOM节点,但是我想做相反的事情。

这可能吗?


问题答案:

没有。

React中的中心概念是您实际上在DOM中没有控件。相反,您的控制权是该工厂功能。DOM中的内容是控件的当前渲染。

如果确实需要,则可以将对象保留为全局变量,其键是工厂函数名称的字符串表示形式,其值是工厂函数,然后在可渲染div上保留包含名称的属性。工厂功能。

但这可能是一个关于XY问题的问题(需要X,了解Y的方法,然后问如何做Y。)也许,如果您能解释自己的目标,那么有一种更好的方法可以更好地适应React的自上而下的概念模型。

一般而言,要求从其渲染中访问控件就像要求从其缓存的PNG渲染中访问SVG一样。可能,但是通常在其他概念上出错的地方是一个危险信号。



 类似资料:
  • 问题内容: 使用v0.13.0中引入的方法,我可以通过映射到来获取传递给父级的每个子组件的DOM节点。 但是,如果某些子项恰好是React Elements而不是Components(例如,其中一个子项是通过JSX创建的),则React会引发不变的违规错误。 挂载后,是否有一种方法可以获取每个子级的正确DOM节点,而不管该子级是什么类? 问题答案: 应该是一个ReactElement或一个Reac

  • 但是,如果有些子元素碰巧是React元素而不是组件(例如,其中一个子元素是通过JSX创建的 ),React将抛出一个不变的冲突错误。 是否有一种方法可以在挂载后获得每个子节点的正确DOM节点,而不管子节点是什么类? 匿名用户 应该是ReactElement或ReactElement数组,但不是组件。 要获得子元素的DOM节点,需要克隆它们并为它们分配一个新的引用。 然后,您可以通过访问子组件,并通

  • 问题内容: 为了在控制台中进行调试,React中是否有任何机制可以使用DOM元素实例来获取支持的React组件? 先前已经在生产代码中使用此问题时询问过此问题。但是,我的重点是用于调试目的的开发版本。 我熟悉React的Chrome调试扩展,但是并非在所有浏览器中都可用。结合使用DOM Explorer和控制台,可以很容易地使用“ $ 0”快捷方式来访问有关突出显示的DOM元素的信息。 我想在调试

  • 问题内容: 我得到了此功能来获取cssPath: 但是我有这样的事情: 但是完全正确的是,它看起来应该像这样: 有人有任何想法简单地用javascript实现吗? 问题答案: 为了始终获得正确的元素,您将需要使用或来选择不能唯一标识元素的选择器。所以试试这个: 你可以添加一个例行检查在其对应的背景下独特的元素(如,,,等)。

  • 本文向大家介绍react怎么拿到组件对应的DOM元素?相关面试题,主要包含被问及react怎么拿到组件对应的DOM元素?时的应答技巧和注意事项,需要的朋友参考一下 refs.

  • 问题内容: 有没有一种方法来获取LinearLayout的子元素?我的代码返回一个视图(linearlayout),但是我需要访问布局内部的特定元素。 有什么建议? (是的,我知道我可以使用findViewById,但是我正在用Java创建布局/子级-而不是XML。) 问题答案: 您可以随时执行以下操作: