reactjs `useResizeContainer`在使用`happy-dom`作为测试环境时抛出错误

zpqajqem  于 2023-04-05  发布在  React
关注(0)|答案(1)|浏览(198)

当使用happy-dom在测试套件中安装DataGrid时,它会抛出错误:

MUI: useResizeContainer - The parent DOM element of the data grid has an empty height.Please make sure that this element has an intrinsic height.The grid displays with a height of 0px.

即使父容器具有设定的高度。
我尝试用jsdom替换happy-dom,错误确实消失了。然而,我对在这个项目中使用后者不感兴趣。我还尝试添加固定和百分比宽度和高度的父容器,但没有成功。

7d7tgy0s

7d7tgy0s1#

您可以尝试在父元素上定义宽度和高度。
另一个解决方案是通过改变Element类的原型来定义所有元素的大小。这可以在设置过程中完成。

仅在父元素上定义大小

Object.defineProperty(parentElement, 'width', { get: () => 100 });
Object.defineProperty(parentElement, 'height', { get: () => 100 });

定义所有元素的大小

Object.defineProperty(Element.prototype, 'width', { get: () => 100 });
Object.defineProperty(Element.prototype, 'height', { get: () => 100 });

相关问题