我仔细阅读了所有可以找到的文档。 react test renderer act()函数实际上是做什么的?他们在这里和那里给出了简短的理由,但我的意思是在更高的技术水平上。
Ty!
答案 0 :(得分:1)
This document是我发现的最好的解释,尽管它似乎仍然不完整。
简而言之:
在同步使用中(即您传递给act()
的回调函数不会返回Promise,并且您不等待结果),act(f)
运行f
,然后确保在返回之前,f
期间启动的所有React状态更新和效果均已完成。
在异步使用中(f
返回一个Promise,然后您等待act(f)
的结果),它...也许还神奇地等待在f
期间创建的任何Promises?还不清楚。在上述文件的GitHub issue中,有人要求作者澄清这一点,但他们没有回应。