Gunakan TypeScript React untuk menyahpantun fungsi acara klik
P粉032649413
2023-08-27 10:33:19
<p>Saya cuba melaksanakan fungsi nyahpantul lodash pada fungsi onclick untuk mengelakkan berbilang klik pada butang. Penyelesaian yang saya buat ialah ini: </p>
<pre class="brush:php;toolbar:false;">function saveForm() {
//Lakukan beberapa operasi di sini
}
<Button onClick={debounce(() => saveForm, 1500, {
maxWait: 2000 })}>
jimat
</Butang></pra>
<p>Saya melihat banyak contoh melakukan nyahlantun pada fungsi di luar pulangan, dan kemudian menggunakan fungsi nyahlantun itu dalam onclick. Adakah salah untuk melakukan debounce (sebaris) terus pada elemen butang? </p>
Dari segi amalan pengekodan yang baik, anda harus mengelak daripada meletakkan terlalu banyak logik perniagaan dalam JSX. Hanya ekstrak pengendali
onClick
anda di luar JSX.Kedua, anda tidak mahu kembali
saveForm
。而是调用它。所以用saveForm
替换() => saveForm
selepas anti goncang.Anda juga boleh menggunakan
useCallback
钩子。如果需要,我把使用useCallback
Amalan terbaik untuk mata kail tinggal untuk anda terokai.