Bonjour à tous,

Sur ma One single page application, j'ai créée un Chat comme sur Facebook, avec une liste de contacts sur la droite et la conversation qui apparait en bas de page.
Malheureusement, j'ai un problème :

Etant donné que je récupère la liste de contacts depuis une API, dès que je passe d'une page à une autre, le controller de la liste de contacts est appelée à nouveau.
Du coup, j'ai une liste de contacts qui se recharge à chaque fois qu'un partials est appelé.

Comment faire pour empêcher que le controller de mon Chat se relance à chaque fois qu'un autre controller est appelé et charge un partials ?

Merci !

3 réponses


Bonjour.
Tu pourrais utiliser de l'ajax, de cette manière, tu fais appel à ton controller qui va récupérer les données auprès de l'API et il te les retournera.

Maitre2B
Auteur

Mais c'est déjà le cas

Le mot important dans ta phrase est : "dès que je passe d'une page à une autre, le controller de la liste de contacts est appelée à nouveau."

Es-tu sûre que ta page se rafraichie ?

Si oui:
Alors c'est tout à fait normal. ton controller sera systématiquement initialisé et executé à chaque rafraichissement. Tu peux utiliser le LocalStorage en guise de cache, ainsi ne pas avoir à executer une requête systématiquement.

Si non:
Alors ton Controller est englobé par un autre qui, en se rafraichissant (chargement de partial ?) rafraichie tous ces enfants. Ici il faudrait isoler le controller se chargeant des contacts.