如何解决fireEvent.click() (form fireEvent) vs element.click() (来自 JSDOM)
上下文:我正在使用测试库并试图了解一些底层机制。
由于 JSDOM 已经提供了“点击”事件的处理,我想知道:
- 这两种管理活动的方式有区别吗?
- 如果没有,为什么 fireEvent 重新定义了这个事件?
如果有差异,我想了解它们是什么以及何时使用一种工具或另一种工具。
(对于第二个问题,我有一个想法,但我想确认一下: fireEvent 提供了一个全局统一的事件生成接口。而点击是其中很自然的一部分。)
解决方法
你猜对了。他们甚至在他们的文档中这么说。这只是一个“触发 DOM 事件的便捷方法”。 您可以在此处查看完整的活动地图(也可单击): https://github.com/testing-library/dom-testing-library/blob/master/src/event-map.js
,HTMLElement.click
触发点击事件
fireEvent.click
使用您选择的事件属性触发点击事件(例如 detail: 2
)
直接来自docs:
注意
大多数项目都有一些 fireEvent 用例,但大多数情况下您应该使用 @testing-library/user-event。
userEvent.click
触发所有在用户点击元素(hover
、pointerdown
等)时应该在浏览器中发生的事件
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。