能够看这个 demo。javascript
另外能够发现 React 合成事件里的 eventPhase 也是错误的。java
相关 issue:react
缘由是 React 的合成事件是经过捕获 document 上的事件实现的,可是由于 enzyme 的 mount 方法不会把建立的 div 挂到 body 上,因此直接在 DOM 元素上触发事件 React 会捕获不到。git
绕过方法是本身建立一个 div 挂到 body 上。github
const container = global.document.createElement('div'); global.document.body.appendChild(container); mount(<App />, { attachTo: container });