Logo
Section 1 / 4

简介

让我们来看一下如何在组件层级结构之外渲染一个元素。

导入

简介

让我们来看一下如何在组件层级结构之外渲染一个元素。

什么是 Portal?

Portal 允许我们将组件渲染到当前组件层级父节点之外的 DOM 节点中,同时仍然能够访问当前组件的环境。

一个典型的例子是将模态遮罩层(overlay)渲染到位于应用程序主结构之外的一个独立 <div> 中。

尽管如此,该 Portal 仍处于创建它的组件的上下文中,因此可以访问父组件的所有数据,例如其 props 和 state。

然而,在最终生成的 HTML 中,它们的位置与应用其余部分完全分离。能够访问 props 和 state 对于 Portal 至关重要,因为这使我们能够使用诸如国际化翻译等共享上下文。

错误边界

创建 Portals