Acara onChange dalam input react terikat pada kaedah handleOnchange Selepas kaedah ini dipanggil, panggilan ajax ditangguhkan Jika pengguna memasuki "Glory of the King", disebabkan masalah kelajuan menaip, dua permintaan untuk "King of Glory. " dan "Raja Kemuliaan" mungkin dihantar pada akhirnya. "Kemuliaan Raja". .
Pada masa ini, permintaan "Raja Kemuliaan" yang pertama mengambil masa lebih lama untuk dikembalikan daripada permintaan "Raja Kemuliaan" kedua Kemudian hasil pemaparan terakhir ialah pengguna melihat bahawa kotak input ialah "Raja Kemuliaan", tetapi hasilnya adalah "Raja Kemuliaan".
Adakah terdapat sebarang penyelesaian teknikal untuk mengelakkan situasi ini?
1. Gunakan ajax segerak (escape)
2 Hasil yang dikembalikan oleh latar belakang membawa kata kunci yang diminta, dan membandingkannya dengan nilai input semasa
3 Kekalkan ID kenaikan automatik, bawakannya dengan setiap permintaan, dan tambah itu ke medan yang dikembalikan oleh permintaan. Kembalikan id ini Jika id yang dikembalikan adalah konsisten dengan id halaman semasa, gunakan data, jika tidak, buangkannya
Ringkasnya, pilihan 3 adalah yang paling serba boleh Jika terdapat berbilang syarat pertanyaan bentuk pada halaman, pilihan 2 akan menjadi sangat menyakitkan.