出于在控制台中进行调试的目的,React中是否有任何机制可以使用DOM元素实例来获取后备React组件?
之前已在生产代码中使用此问题的上下文中询问过此问题.但是,我的重点是用于调试的开发版本.
我熟悉React的Chrome调试扩展程序,但并非所有浏览器都可以使用.结合DOM资源管理器和控制台,可以很容易地使用"$ 0"快捷方式访问有关突出显示的DOM元素的信息.
我想在调试控制台中编写类似这样的代码:getComponentFromElement($ 0).props
即使在React开发版本中,也没有机制可以使用元素的ReactId来获取组件?
如何以编程方式设置React生成的输入字段的值,使用vanilla JS还是JQuery?
我尝试过以下内容似乎没有任何效果.
$(obj).val('abc');
$(obj).attr('value', 'abc');
$(obj).keydown();
$(obj).keypress();
$(obj).keyup();
$(obj).blur();
$(obj).change();
$(obj).focus();
Run Code Online (Sandbox Code Playgroud)
我也试图模拟keyPress(如此处所示)事件,但它似乎也没有用.
simulateKeyPresses (characters, ...args) {
for (let i = 0; i < characters.length; i++) {
this.simulate('keyPress', extend({
which: characters.charCodeAt(i),
key: characters[i],
keyCode: characters.charCodeAt(i)
}, args));
}
}
Run Code Online (Sandbox Code Playgroud)