鍍金池/ 問(wèn)答/HTML/ react 有沒(méi)有什么方法可以取代setTimeout 0秒

react 有沒(méi)有什么方法可以取代setTimeout 0秒

vue 有 nextTick可以獲取渲染完成的DOM react有沒(méi)有類(lèi)似的方法。
(想獲取element-react中的dialog組件的高度,總是獲取為0,用setTimeout 就可以獲取得到)

看了下源碼,猜想是Transition 有了過(guò)渡時(shí)間才拿不到高度的
clipboard.png

回答
編輯回答
局外人

可以試試先把你的dialog渲染出來(lái),display: none
在觸發(fā)點(diǎn)擊dialog顯示事件時(shí)再去獲得高度

2017年1月13日 07:56
編輯回答
萌吟

可以試試先把你的dialog渲染出來(lái),opaicty: 0, z-index: -1
在觸發(fā)點(diǎn)擊dialog顯示事件時(shí)再去獲得高度

2018年6月25日 19:47
編輯回答
赱丅呿

可以通過(guò)ref屬性,拿到渲染后的對(duì)象

2017年5月30日 22:18
編輯回答
熟稔

在掛載完成中可以獲取 componentDidMount

2017年8月17日 00:19