在Contenteditable元素上触发事件keyDown(测试+ react + jest +酶)

时间:2017-05-03 14:48:35

标签: reactjs testing contenteditable jestjs enzyme

我正在使用酶+ jest来测试反应App,是否有可能在可争议的span元素上触发onKeyDown事件?

<span id = 'name' contenteditable = 'true'> Editable text </span>

我试过了:

result.find('#name').simulate('keyDown', { key: 'm', keyCode: 77, which: 77 });,

但它不起作用。元素内容保持不变。

1 个答案:

答案 0 :(得分:1)

这不是酶的工作原理。它只能模拟显式反应中添加的事件。来自文档

  

即使名称暗示这模拟了一个实际的事件,   .simulate()实际上将基于该目标来定位组件的道具   你给它的事件。例如,.simulate(&#39;点击&#39;)实际上会得到   onClick道具并调用它。