【发布时间】:2017-03-29 15:57:48
【问题描述】:
例如:
我在 react 中添加事件处理程序:
<div onClick={someHandler}/>
然后我派发事件:
let clickEvt = new MouseEvent('click', {
'bubbles': false,
'cancelable': true
});
elm.dispatchEvent(clickEvt);
但是什么也没发生。我听说你可以使用elm.click() 来触发反应事件。我想知道这是否是做出反应的正确方法? click() 和 dispatchEvent() 之间还有什么区别?因为我有点想坚持dispatchEvent()。
【问题讨论】:
-
elm的值是多少? -
这是我使用 getElementsByTagName('button')[idx] 检索的 HTMLnode,该按钮应该存在,否则应该说 elm 之类的东西未定义。
-
@felix 我刚刚再次检查,
elm在调用dispatchEvent之前被记录为右键。当我用鼠标单击按钮时,一切正常,但dispatchEvent什么也不做。抱歉,我在示例中使用了div,但它是一个按钮。
标签: reactjs onclick dispatchevent