反应测试渲染器行为功能

时间:2019-11-27 19:40:16

标签: reactjs testing

我仔细阅读了所有可以找到的文档。 react test renderer act()函数实际上是做什么的?他们在这里和那里给出了简短的理由,但我的意思是在更高的技术水平上。

Ty!

https://reactjs.org/docs/test-renderer.html#testrendereract

1 个答案:

答案 0 :(得分:1)

This document是我发现的最好的解释,尽管它似乎仍然不完整。

简而言之:

在同步使用中(即您传递给act()的回调函数不会返回Promise,并且您不等待结果),act(f)运行f,然后确保在返回之前,f期间启动的所有React状态更新和效果均已完成。

在异步使用中(f返回一个Promise,然后您等待act(f)的结果),它...也许还神奇地等待在f期间创建的任何Promises?还不清楚。在上述文件的GitHub issue中,有人要求作者澄清这一点,但他们没有回应。