av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

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

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

問題描述

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

我不知道這個實現的原理是什么?怎么才能把我寫的彈窗插入到頁面最后去呢?

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

問題解答

回答1:

去看Modal實現的源碼,很好看懂。簡單來說就是:

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

@ssruoyan 你這么寫用ES6語法如何實現?javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁面最后的

回答3:

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

modal是否可見根據他的visible判斷,這是今天寫的一個移動端的代碼。不太清楚你說的什么意思

回答4:

實際上就是脫離react作用域渲染并使用一個組件

這個涉及到ReactDOM.unstable_renderSubtreeIntoContainer這個接口, 但是這個接口文檔上是沒有的,并且被標注了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里的用法

簽名和定義可以見這里,上面有注釋

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

標簽: JavaScript
主站蜘蛛池模板: 视频在线h | 中文字幕国产一区 | 久久中文字幕一区 | 国内精品成人 | 国产精品v | 亚洲97 | 九九天堂网 | 亚洲欧美中文字幕 | 激情婷婷成人 | 国产黄色麻豆视频 | 久久伊人久久 | 国产一区二区三区四区五区加勒比 | 欧美中文字幕一区二区三区亚洲 | 欧美日韩国产欧美 | 欧美最猛黑人xxxⅹ 粉嫩一区二区三区四区公司1 | 成人av一区| 亚洲综合色视频在线观看 | 久久精品亚洲国产 | 亚洲精品一区中文字幕乱码 | 中文字幕在线免费观看 | 精品一区二区三区视频在线观看 | 黄色在线免费观看 | 日干夜干 | 日韩欧美综合在线视频 | 国产精品美女久久久久久不卡 | 在线啊v| 国产精品欧美一区二区三区不卡 | 美女在线一区二区 | 国产目拍亚洲精品99久久精品 | 99re6在线 | 欧美福利| 91在线网站| 黄色一级毛片免费看 | 精久久久久 | 国产视频一区在线 | 91亚洲国产精品 | 国产精品黄视频 | 成人在线免费电影 | 一级aaaa毛片 | 天堂国产 | 中文字幕人成人 |