我正在尝试使用纯JS或jQuery触发React表单上的输入/更改事件。 使用react-dom 15.6.0,您可以在事件对象上使用模拟标志,以使事件通过
var ev = new Event('input', { bubbles: true});
ev.simulated = true;
element.value = 'Something new';
element.dispatchEvent(ev);
实施例: https://codepen.io/catthr/pen/PKXzLQ
因此,此评论的原始建议过去有用:https://github.com/cypress-io/cypress/issues/536#issuecomment-308739206
但在React 16发布后,这并没有按预期触发输入和更改事件。
在React 16中如何处理输入数据更改的内部变化是什么?
答案 0 :(得分:0)
将输入更改传递给state =>当状态发生变化时,就会触发生命周期挂钩,在那里处理逻辑。
不确定你要做什么,但是vanilla javascript应该足够
您在提交时想要做什么? 你在追踪什么事件?
在我得到一些澄清之后,我会尝试更多地帮助你
谢谢:)