react中portal是提供了一种很好的将子节点渲染到父组件外部dom层级中的dom节点中的方式,语法为【reactdom.createportal(child, container)】。
portals 提供了一种很好的将子节点渲染到父组件外部 dom 层级中的 dom 节点中的方式。
语法:
reactdom.createportal(child, container)
第一个参数(child)是任意可渲染的 react 子元素,例如一个元素,字符串或片断。第二个参数(container)是一个 dom 元素。
通常从组件的 render 方法中返回的一个元素,该元素仅能装配到 dom 节点中离其最近的父元素,但有时候也需要将其插入到 dom 节点中的不同位置:
render() { // react 不会创建新的 div。他渲染子元素到 `domnode` 中。 // `domnode` 可以是任意有效的 dom 节点,无论他在 dom 中的位置如何。 return reactdom.createportal( this.props.children, domnode, );}
对于 portal 的一个典型用例是当父组件有 overflow: hidden 或 z-index 样式时你需要其子组件能够在视觉上跳出其容器。例如,对话框、hovercards 以及提示框。
相关免费学习推荐:javascript(视频)
以上就是react中portal是什么意思的详细内容。