对于我的应用,我需要渲染一些子元素,然后测量结果div。在伪代码中,它看起来像这样:
function getDims(child) {
var testEl = document.getElementById('test-el');
ReactDOM.render(child, testEl);
var dims = testEl.getBoundingClientRect();
ReactDOM.unmountComponentAtNode(testEl);
return dims;
}
字符串
不幸的是,根据文档ReactDOM.render将来可能会变成异步的。是否有一个面向未来的选项来强制同步渲染,以便上面的函数可以工作?
2条答案
按热度按时间fnx2tebb1#
你可以给
ReactDOM.render(ReactElm, DOMNode, callback)
传递一个回调函数。一旦ReactElm
被加载到DOMNode
中,callback
就会被执行。希望这对你有帮助!
字符串
使用示例:
的数据
m3eecexj2#
在React 18+中,我们可以使用
renderToString
:字符串