在jsdom命令行界面中运行以进行单元测试。
const event = new window.TouchEvent('touchstart');
TypeError:非法构造函数
为什么这不起作用? 根据这个MDN列表,它应该通过构造函数工作。
这很好用:
const event = new window.MouseEvent('mousemove');
这也有效但不推荐使用:
const event = document.creatEvent('touchstart');
答案 0 :(得分:0)
@Martin Mazza Dawson
正如您所提到的那样,不推荐使用createEvent方法。只要传递给方法的事件在列表中,您仍然可以使用document.createEvent。以下是可以传递给createEvent方法的事件类型列表。 https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent
“touchstart”事件类型在给定的列表中不存在。我相信你指的是'ontouchstart',这是一种可以在DOM中存在的单个元素上执行的方法。可以在此处找到ontouchstart的文档。 https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/ontouchstart
我希望这会帮助你。祝你有美好的一天。