Recette UI · Version 1.0.0
5 min de lecture
Mis à jour le
Chercher, affiner et traiter l’absence de résultat
Relie saisie, filtres, chargement, résultats, clarification et reprise sans abandonner les contraintes explicites.
Réponse directe
Garde la demande et les filtres actifs visibles. Distingue le contexte manquant, l’absence de correspondance et le service indisponible, avec une prochaine action pour chaque cas. Seul l’utilisateur choisit d’assouplir une contrainte.
Assembler et essayer
Version 1.0.0
- Champ de recherche
Permettre de formuler un besoin et de lancer la recherche explicitement.
- Case à cocher
Affiner les résultats avec un filtre explicite et réversible.
- Indicateur d'attente
Signaler l’attente avec un texte lisible, sans inventer de pourcentage de progression.
- Alerte dans le contexte
Distinguer une requête en échec d’une recherche réussie sans correspondance.
Ce que cette recette ne couvre pas
Trois destinations fictives, filtrées localement par nom de ville. Ce n’est ni un service de voyage ni le moteur Search de l’atlas. La saisie et le filtre restent en mémoire dans la page. La panne simulée n’envoie aucune requête. Retirer le filtre demande ton action ; un résultat vide ne l’assouplit jamais en silence. Aucun classement, disponibilité, prix ou réservation n’est promis.
Instruction à adapter
Texte éditorial fixe, distinct des Packs. Relis les limites ci-dessus avant de l’utiliser ; aucune exécution n’est garantie.
Construis un parcours de recherche avec un champ nommé, un envoi explicite et une case Train uniquement réversible. Conserve la saisie et chaque filtre explicite pendant le chargement, l’échec et la reprise. Demande une ville si la demande est vide. Bloque les envois en double pendant l’attente et annonce le nombre de résultats. Sans correspondance, garde les contraintes visibles et propose de modifier la saisie ou de retirer explicitement le filtre. Distingue l’absence de résultat de la panne ; réessaie sans effacer la saisie. Vérifie une ville compatible, un filtre incompatible, l’absence de ville, une panne et sa reprise à 320 px et au clavier. Utilise les données réelles uniquement via une intégration vérifiée séparément ; ne déduis aucune disponibilité de cet exemple local.
01
1. Formule le besoin
Saisis Porto dans l’exemple. Le champ de recherche nomme la demande ; un envoi vide demande plutôt une ville. C’est une clarification, pas une affirmation que la ville n’est pas couverte.
02
2. Affine explicitement
Coche Train uniquement. La case est une contrainte, pas une préférence à ignorer. Cherche Porto : ce jeu fictif n’a aucune correspondance. Garde la saisie et le filtre visibles.
03
3. Explique l’attente et les résultats
Pendant l’attente, un texte lisible remplit le rôle du Spinner et l’envoi est désactivé. À la fin, annonce le nombre de résultats. Une requête réussie peut n’en retourner aucun ; explique comment modifier la saisie ou retirer explicitement le filtre.
04
4. Reprends sans perdre le contexte
Simule une panne, lance la recherche et observe l’alerte intégrée. Retire la panne et réessaie : la saisie et le filtre restent. Retire explicitement Train uniquement pour retrouver Porto, ou saisis Paris en conservant le filtre. Vérifie quelle contrainte a changé.
À conserver
Le résultat à vérifier
- 01L’envoi vide demande une ville et place le focus dans le champ.
- 02Porto + Train uniquement ne donne aucun résultat sans retirer le filtre.
- 03L’échec et la reprise conservent la saisie ; retirer le filtre explicitement redonne un résultat.
Sources primaires
Les affirmations techniques de ce guide sont reliées aux spécifications et documentations first-party.
Continuer