Anda dapat menggunakan ref
prop untuk mendapatkan referensi ke objek HTMLInputElement yang mendasari melalui callback, menyimpan referensi sebagai properti kelas, kemudian menggunakan referensi tersebut untuk memicu klik nanti dari penangan peristiwa Anda menggunakan metode HTMLElement.click .
Dalam render
metode Anda :
<input ref={input => this.inputElement = input} ... />
Di event handler Anda:
this.inputElement.click();
Contoh lengkap:
class MyComponent extends React.Component {
render() {
return (
<div onClick={this.handleClick}>
<input ref={input => this.inputElement = input} />
</div>
);
}
handleClick = (e) => {
this.inputElement.click();
}
}
Perhatikan fungsi panah ES6 yang menyediakan cakupan leksikal yang benar untuk this
callback. Juga perhatikan, bahwa objek yang Anda peroleh dengan cara ini adalah objek yang mirip dengan apa yang akan Anda peroleh dengan menggunakan document.getElementById
, yaitu simpul DOM sebenarnya.