ReactDOM渲染到多个节点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReactDOM渲染到多个节点相关的知识,希望对你有一定的参考价值。

我必须在页面的多个位置上渲染React组件。所以我有两个divs和相同的ids,并且我想在两个地方渲染相同的React组件:

<h1>Title 1</h1>
<div id='react-component'>/<div>
.
.
.

<h1>Title 2</h1>
<div id='react-component'>/<div>

在React中,它只在一个位置上渲染组件:

const node = document.querySelector('#react-component');
if (!node) {
  return null;
}
ReactDOM.render(<Component />, node);

解决这个问题的最有效方法是什么? ReactDOM是否可以在多个节点上渲染相同的组件?

答案

Probably shouldn't use two same IDs.但您可以对类进行相同的操作!

然后您只需使用]

document.querySelectorAll('.yourclass') (由于querySelector只给您所找到项目的第一个实例)

以上是关于ReactDOM渲染到多个节点的主要内容,如果未能解决你的问题,请参考以下文章

ReactDOM.render和ReactDOM.createPortal

React学习笔记 - 元素渲染

第十五篇:ReactDOM.render 是如何串联渲染链路的?(下)

第十五篇:ReactDOM.render 是如何串联渲染链路的?(下)

react 插槽(Portals)

2ReactJs基础知识02