Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Menetapkan Fokus pada Medan Input dalam Reaksi Selepas Pemberian?

Bagaimana untuk Menetapkan Fokus pada Medan Input dalam Reaksi Selepas Pemberian?

Susan Sarandon
Lepaskan: 2024-11-02 02:42:30
asal
346 orang telah melayarinya

How to Set Focus on an Input Field in React After Rendering?

Menetapkan Fokus pada Medan Input Pasca-Rendering dalam React

Menetapkan fokus pada medan input tertentu selepas pemaparan komponen boleh dicapai melalui React's sistem ref. Dengan memberikan rujukan kepada medan input menggunakan atribut "ref", anda mendapat akses kepada nod DOMnya, membolehkan anda memanipulasi keadaan fokusnya.

Seperti yang dinyatakan dalam dokumentasi, anda boleh menetapkan ref bernama " nameInput" ke medan input anda semasa fungsi render. Walau bagaimanapun, persoalan kritikalnya ialah: di manakah anda harus memanggil kaedah "fokus()"?

Titik Invokasi Optimum

Untuk hasil yang optimum, anda harus memanggil "ini .refs.nameInput.getInputDOMNode().focus()" kaedah dalam kaedah kitaran hayat "componentDidMount". Kaedah ini digunakan serta-merta selepas komponen dipasang dan dimasukkan ke dalam DOM. Dengan memanggil kaedah fokus di sini, anda memastikan bahawa fokus ditetapkan sebaik sahaja komponen kelihatan.

Pilihan Alternatif

Penyelesaian @Dhiraj menawarkan pendekatan alternatif dengan menggunakan prop "autoFocus". Prop ini, apabila ditetapkan kepada benar, mengarahkan medan input untuk memfokus secara automatik apabila ia dipasang. Anda boleh menggunakannya seperti ini:

<input autoFocus name=... />
Salin selepas log masuk

Perhatikan bahawa "autoFocus" hendaklah menggunakan huruf besar "autoFocus" dalam JSX, tidak seperti HTML, yang tidak peka huruf besar-kecil.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Fokus pada Medan Input dalam Reaksi Selepas Pemberian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan