模拟酶中的焦点不会更改document.activeElement

时间:2019-07-03 15:08:00

标签: javascript jestjs enzyme

我安装了组件,模拟了按钮上的焦点,然后检查document.activeElement的结果,该结果仍为<body>。我在这里想念什么?

const app = mount(<Component />);

app.find("button").simulate('focus');

const focusedElement = document.activeElement; // result: <body>

1 个答案:

答案 0 :(得分:0)

看看https://github.com/airbnb/enzyme/issues/2173#issuecomment-505551552

simulate在很多方面都不是模拟:

  1. 事件不会冒泡
  2. 它与document.activeElement无关
  3. 模拟click不会触发mouseDownblurfocus

您不能用笑话/酶来测试。 我想您可以使用Selenium或类似的东西进行测试。