react中portal是提供了一種很好的將子節(jié)點(diǎn)渲染到父組件外部DOM層級(jí)中的DOM節(jié)點(diǎn)中的方式,語(yǔ)法為【ReactDOM.createPortal(child, container)】。
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的徽縣網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
Portals
提供了一種很好的將子節(jié)點(diǎn)渲染到父組件外部 DOM 層級(jí)中的 DOM 節(jié)點(diǎn)中的方式。
語(yǔ)法:
ReactDOM.createPortal(child, container)
第一個(gè)參數(shù)(child)是任意可渲染的 React 子元素,例如一個(gè)元素,字符串或片斷。第二個(gè)參數(shù)(container)是一個(gè) DOM 元素。
通常從組件的 render 方法中返回的一個(gè)元素,該元素僅能裝配到 DOM 節(jié)點(diǎn)中離其最近的父元素,但有時(shí)候也需要將其插入到 DOM 節(jié)點(diǎn)中的不同位置:
render() { // React 不會(huì)創(chuàng)建新的 div。他渲染子元素到 `domNode` 中。 // `domNode` 可以是任意有效的 DOM 節(jié)點(diǎn),無(wú)論他在 DOM 中的位置如何。 return ReactDOM.createPortal( this.props.children, domNode, ); }
對(duì)于 portal 的一個(gè)典型用例是當(dāng)父組件有 overflow: hidden
或 z-index
樣式時(shí)你需要其子組件能夠在視覺(jué)上跳出其容器。例如,對(duì)話框、hovercards 以及提示框。
相關(guān)免費(fèi)學(xué)習(xí)推薦:JavaScript(視頻)
當(dāng)前名稱:react中portal是什么意思
網(wǎng)站地址:http://m.rwnh.cn/article2/cgiiic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站營(yíng)銷、關(guān)鍵詞優(yōu)化、自適應(yīng)網(wǎng)站、全網(wǎng)營(yíng)銷推廣、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)