root 根节点以外,渲染一个新的DOM元素
第一个参数是, React child,react节点
第二个参数是,DOM元素
import ReactDOM from 'react-dom';function CreatePortal({children}) {const bodyRef = useRef(document.querySelector('body'));const el = document.createElement('div');useEffect(init, []);function init() {el.setAttribute('id', 'portal-root');bodyRef.current.appendChild(el);return () => {bodyRef.current.removeChild(el);}}return ReactDOM.createPortal(children, el);}export default CreatePortal
父组件引用
import CreatePortal from '@/CreatePortal';function App() {return (<CreatePortal>Pages</CreatePortal>)}

