千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > ReactDOM.createPorta

ReactDOM.createPorta

来源:千锋教育
发布人:zyh
时间: 2023-06-29 13:34:00 1688016840

  `ReactDOM.createPortal`是React的一个API,用于将组件渲染到DOM树中的不同位置,而不是组件当前所在的位置。

  使用`ReactDOM.createPortal`可以将组件渲染到其他DOM元素的子树中,这对于在组件层次结构之外的位置渲染内容非常有用,例如模态框、弹出窗口、通知消息等。

  下面是`ReactDOM.createPortal`的基本用法: 

import ReactDOM from 'react-dom';

const Modal = ({ children }) => {
return ReactDOM.createPortal(
children,
document.getElementById('modal-root')
);
};

// 在组件的父组件中使用Modal组件
const App = () => {
return (
<div>
<h1>App Component</h1>
{/* 其他组件 */}
<Modal>
<h2>Modal Content</h2>
</Modal>
</div>

);
};

ReactDOM.render(<App />, document.getElementById('root'));

  在上述示例中,我们定义了一个名为Modal的组件,并使用ReactDOM.createPortal将h2 Modal Content /h2渲染到id为modal-root的DOM元素中。在父组件App中使用Modal将模态框内容渲染出来。

  需要注意的是,ReactDOM.createPortal的第一个参数是要渲染的内容,可以是一个React元素或组件。第二个参数是目标DOM元素,它是一个在DOM中的有效元素,用于指定将内容渲染到哪个位置。

ReactDOM

  通过使用ReactDOM.createPortal,我们可以将组件的渲染范围扩展到DOM树的其他位置,从而实现更灵活的渲染和布局控制。

tags: ReactDOM
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT