Skip to main content
Question

Du bon usage du widget ods-spinner

  • January 15, 2026
  • 1 reply
  • 17 views

Bonjour,

Auriez-vous le moindre conseil concernant le bon usage du widget ods-spinner ? Ou plus largement de toute mention visuelle d’un traitement/chargement en cours ?

Le contexte est celui de pages développées grâce au code editor. Et du chargement et affichage des résultats - lors d’interactions avec un dataset (refine, query, etc.) - qui n’est pas systématiquement instantané. Affichage des résultats via le widget ods-results en particulier.

Il y a-t-il une propriété particulière d’un ods-dataset qui peut servir de test pour le ng-show d’un ods-spinner tant que le traitement d’une requête/refine est en cours ? Un test sur nhits avec une valeur seuil fonction du contexte d’interaction a-t-il du sens ?

Merci d’avance !
Jérémy

 

 

 

 

1 reply

Forum|alt.badge.img+2

Bonjour Jérémy,

D’un point de vue technique, il est généralement possible de détecter le chargement initial en testant simplement l’existence d’une variable (nomducontexte.dataset par exemple), en revanche la plupart des widgets sont conçus pour conserver le résultat précédent en attendant de nouveaux résultats (typiquement suite à un filtre), et il n’y a pas de façon générique de vérifier si un chargement est en cours.

Dans le cas du ods-results, une variable “loading” est rendue disponible et on peut l’utiliser pour l’affichage d’un spinner :

<p ods-results="items" ods-results-context="tree" ods-results-max="10">
<ods-spinner ng-if="loading"></ods-spinner>
Total number of trees : {{ tree.nhits }}
</p>
En revanche si plusieurs ods-results sont imbriqués, seul l’état du chargement du plus “profond” sera accessible.
C’est un cas particulier, et les autres widgets n’ont pas de tel mécanisme. Mais si vous utilisez surtout ce widget vous pourrez ainsi vous en sortir.
Il est possible que d’autres astuces un peu complexes soit possibles lorsqu’on déclenche une action via un ng-click, comme de stocker les résultats précédents au moment du click et afficher le spinner tant que les résultats actuels sont encore les précédents, mais tout cela dépend du widget et de la situation, et cela commence à devenir assez complexe et potentiellement plus fragile.