event.persist 不是一个函数 - JEST & Enzyme



我使用的是用开玩笑和酶作为我的测试实用程序,我有一个输入,当用户输入电子邮件并模糊字段时,函数(handleinputblur(被调用。在该功能中,我正在更新状态(setState(和setState()回调,我正在调用另一个功能,并将事件传递给handleInputBlur最初。

现在,据我了解,由于 setState是异步反应,因此不允许在setState回调中传递事件。因此,我添加了event.persist()来坚持事件。到目前为止,一切都很好。

当我尝试运行我编写的嘲笑测试用例并在输入上模拟blur时,它会调用该功能,但会引发错误:

TypeError: e.persist is not a function

我不明白要解决这个问题到底要做什么。

模拟事件时,您可以将模拟事件对象传递给

wrapper.find('a').simulate('blur', { persist: jest.fn()});

最新更新