如何在子元素之后插入“React”组件?

Posted

技术标签:

【中文标题】如何在子元素之后插入“React”组件?【英文标题】:How to insert a `React` component after a child element? 【发布时间】:2014-04-12 23:52:39 【问题描述】:

我正在尝试创建一个React 组件并将其插入到子元素之后。这是标记。

<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Other <b class="caret"></b>
  </a>
</li>

我想在&lt;a&gt; 标记之后插入我的React 组件,但不是&lt;a&gt; 标记的子项。这是我想要的样子。

<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Other <b class="caret"></b>
  </a>
  <ul ... this is my React component>

  </ul>
</li>

这是添加组件的代码:

React.renderComponent(new NavbarDropdown(), this.$el.find('WHAT GOES HERE').get(0));

我不想添加带有 id 的 div 来放置它,那么如何在该位置添加 React 组件?

【问题讨论】:

顺便说一句,使用 React 的开发版本。你会看到一个警告,class 应该是 `className。 【参考方案1】:

React 需要将组件渲染到 something 上。所以你可以在那里放置一个占位符div

【讨论】:

有没有办法让replace 代替append 不,至少现在还没有。当您使用unmountComponentAtNode 时,这种方式会更容易。

以上是关于如何在子元素之后插入“React”组件?的主要内容,如果未能解决你的问题,请参考以下文章

React Insert功能-子组件问题

React/Router/MemoryRouter - 如何传递历史属性并在子组件中使用 push()?

如何在 React 组件中插入使用 js 创建的 iframe

如何在子组件中访问根组件的状态值

如何更新 React 组件的数组?

react-router 在子组件中获取 this.props.location