0

背景:我正在使用测试库并试图了解一些底层机制。

由于 JSDOM 已经提供了“点击”事件的处理,我想知道:

  • 这两种管理事件的方式有区别吗?
  • 如果不是,为什么 fireEvent 重新定义了这个事件?

如果存在差异,我想了解它们是什么以及何时使用一种工具或另一种工具。

(对于第二个问题,我有一个想法,但我想确认一下:fireEvent 提供了一个全局统一的接口来生成事件。点击是其中的一个自然部分。)

4

2 回答 2

0

你猜对了。他们甚至在他们的文档中这么说。它只是一个“触发 DOM 事件的便捷方法”。您可以在此处查看完整的事件地图(也可单击): https ://github.com/testing-library/dom-testing-library/blob/master/src/event-map.js

于 2021-03-12T11:32:05.220 回答
0

HTMLElement.click触发点击事件

fireEvent.click触发带有您选择的事件属性的点击事件(例如detail: 2

直接来自文档

笔记

大多数项目都有一些 fireEvent 用例,但大多数时候您可能应该使用@testing-library/user-event

userEvent.clickhover如果用户单击元素( 、、pointerdown等) ,则触发浏览器中应发生的所有事件

于 2021-03-18T13:43:54.987 回答