Séparer saisie et résultat
Le champ doit rester réactif pendant que le visiteur écrit. Si chaque caractère déclenche un traitement lourd ou une requête distante, le coût peut s’accumuler. Une temporisation peut regrouper les demandes, mais elle ne doit pas empêcher l’affichage normal de la saisie.
Gérer les réponses dans le bon ordre
Des requêtes successives peuvent terminer dans un ordre différent de leur départ. Le résultat affiché doit correspondre au texte actuel, pas à une ancienne recherche arrivée tardivement. Une annulation ou un identifiant de requête peut être nécessaire selon l’architecture.
Annoncer l’état utile
Indiquez un chargement lorsqu’il existe réellement et distinguez l’absence de résultat d’une erreur. Testez le clavier, l’effacement du champ et un collage rapide de texte. Une temporisation bien choisie réduit le travail sans donner l’impression que l’interface ignore l’utilisateur. Essayez aussi une recherche très courte puis une longue chaîne collée directement, afin de vérifier que le résultat courant reste toujours prioritaire.