Bonjour à tous et à toutes,

J'espère que la communauté se porte bien :)

Aujourd'hui, je viens à vous car je rencontre actuellement une problématique que je n'arrive pas à résoudre ...
A savoir que je suis nouveau sur NodeJS (toutefois je m'y connais déjà plutôt bien en PHP/Symfony, donc je ne pars pas de nul part)

J'ai une classe qui s'occupe de faire des traitements au travers d'une boucle (exemple simplifié) du nom de "MaClass"
La console voit tout le traitement grâce au "console.log" et à la variable "progress", mais je n'arrive pas à récupérer ma variable en dehors de ma class de manière dynamique ...

// Fichier MaClass.js
class MaClass {
  static async create(max, callback) {
    var progress = 0;
    var data = null;
    for (let i = 1; i <= max; i++) {
      progress = round((i/max)/100);
      console.log("Progression : " + progress + "%");
    }
    data = "Salut Grafikart !";
    callback(data);
  }
}
module.exports = MaClass;

J'ai essayé avec les cookies (mais la fonction a besoin de la "response", pour les sessions pas sur que ca soit adapté).
J'ai tenté de comprendre les events ... bref je me perds complétement haha !
Je dois passer par mon "app.js" (qui fonctionne avec Express.js soit dit en passant) ?

Je dis peut-être de grosses bétises avec tout ce tralala, mais comment puis-je récuperer une variable d'une classe pour l'envoyer à ma vue (Twig) en temps réél (ainsi ... je pourrai l'attribuer avec du jquery à une ProgressBar pour que ca soit joli) ?

Merci d'avance pour vos réponses les amis !

1 réponse


Bonjour,

Je ne comprend pas bien ce que tu cherches à faire, tu peux appelles une route de ton API Express.js, et une tu exécutes des traitements dans une boucle, sauf qu'a chaque traitement tu voudrais envoyer l'avancé de la progression vers le front ?