国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁(yè)面最后的

瀏覽:85日期:2023-02-28 15:06:03

問(wèn)題描述

想用react寫一個(gè)公用的彈窗模塊,類似螞蟻金服種的react Modal方法。

我不知道這個(gè)實(shí)現(xiàn)的原理是什么?怎么才能把我寫的彈窗插入到頁(yè)面最后去呢?

javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁(yè)面最后的javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁(yè)面最后的

問(wèn)題解答

回答1:

去看Modal實(shí)現(xiàn)的源碼,很好看懂。簡(jiǎn)單來(lái)說(shuō)就是:

let p = createElement(’p’);document.body.appendChild(p);ReactDOM.render(<Modal />, p);回答2:

@ssruoyan 你這么寫用ES6語(yǔ)法如何實(shí)現(xiàn)?javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁(yè)面最后的

回答3:

javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁(yè)面最后的

modal是否可見(jiàn)根據(jù)他的visible判斷,這是今天寫的一個(gè)移動(dòng)端的代碼。不太清楚你說(shuō)的什么意思

回答4:

實(shí)際上就是脫離react作用域渲染并使用一個(gè)組件

這個(gè)涉及到ReactDOM.unstable_renderSubtreeIntoContainer這個(gè)接口, 但是這個(gè)接口文檔上是沒(méi)有的,并且被標(biāo)注了unstable

它的簽名是這樣的

function( parentComponent, nextElement, container, callback, )

大概可以這樣用

componentDidMount() { const container = document.createElement(’p’); document.body.appendChild(container);ReactDOM.unstable_renderSubtreeIntoContainer( this, (<Modal />), container, function () { /* callback */ } )}

具體用法可以參考一下react-portal里的用法或者螞蟻金服ant design里的用法

簽名和定義可以見(jiàn)這里,上面有注釋

其實(shí)我也沒(méi)完全理解這個(gè)接口的用法...不保證正確,題主還是自己看上面連接里的代碼吧

標(biāo)簽: JavaScript
主站蜘蛛池模板: 国产成人综合95精品视频免费 | 最新亚洲精品国自产在线观看 | 一级一毛片a级毛片欧美 | 欧美69视频 | 亚洲人成亚洲人成在线观看 | 精品视频在线观看一区二区三区 | 在线观看免费a∨网站 | 久久99精品久久久久久国产越南 | 午夜不卡av免费 | 精品国产91久久久久久久a | 国产成人免费片在线观看 | 毛片免费在线 | www.夜夜骑.com| 亚洲二区在线 | 特黄a三级三级三级 | 亚洲成a人片在线观看中文 亚洲成a人片在线观看中文!!! | 国产真人毛片一级视频 | 加勒比毛片 | aaa一级特黄 | 欧美特黄一级aa毛片 | 欧美日韩视频在线第一区二区三区 | 国产精品三级在线播放 | 国产成人综合久久精品亚洲 | 一区二区三区在线 | 网站 | jizjiz日本 | 欧美一级大片免费观看 | 夜色邦合成福利网站 | 男人的天堂黄色 | 国产精品视频九九九 | 成a人片亚洲日本久久 | 国产成人综合手机在线播放 | 日本一道免费一区二区三区 | 国产亚洲精品yxsp | 在线看毛片网站 | 国产福利社区 | 久久99热久久精品91 | 97视频免费播放观看在线视频 | 亚洲精品视频专区 | 成人自拍视频 | 毛片手机在线视频免费观看 | 久久精品国产99国产 |