Bonjour,

Une petite question sur les performances et pratiques sur AngularJS.

Partant de pas beaucoup de connaissances, j'ai développé une app hybride sans distinguer les differents modules de mon app dans des controller et view (.html), c'est à dire pour faire simple:

  • 1 index.html
  • 1 view.html (module1, module2,..)
  • 1 controller.js

    J'ai essayé pour le module3 de faire un fichier html, controller separés pour faire porpre et organiser. Genre :

  • 1 index.html
  • 1 view.html (module1, module2,..)
    • 1 controller.js
  • 1 view3.html (module3)
    • 1 controller3.js

Quand je fais ça c'est beaucoup plus propre.
Cependant, au changement de view (de mod1 ou mod2 vers mod3 ou l'inverse), j'ai un gros temps de latence.

Auriez-vous un avis la dessus?

Merci

7 réponses


betaWeb
Réponse acceptée

Oui c'est normal, il faut que le client charge tes vues 1 par 1, puis qu'angular fasse sa tisane derrière. Ca prendre du temps ^^
Est-ce que tu fais du template cache ? Ou du lazy loading ?

Maenhyr
Réponse acceptée

Bonjour,
ca me semble normal que tu aies un temps de latence car ton navigateur doit effectuer une requête pour obtenir le fichier Js et ensuite une requête pour obtenir le fichier html.

Une bonne pratique est de découper ton code et fichiers pour pouvoir t'y retrouver mais d'ensuite les regrouper en un seul fichier lorsque tu le mets en production.

Salut,

https://github.com/johnpapa/angular-styleguide ;)

Sinon, je n'ai pas bien compris quel est ton problème ?

Merci pour ta réponse,
Mon problème est que quand j'éclate mes vue html dans plusieurs fichiers pour les ordonnées, j'ai un temps de latence de 1 à 2 sec avant que ca change de vue alors que lorsque toutes les vues étaient à la suite c'était quasi immédiat (peut-être du au chargement d'une nouvelle page html au lieu d'afficher une section html).
j'espère avoir été un peu plus précis.

Merci vous deux alors :

@betaWeb : template cache ? Ou du lazy loading ? => pas du tout, je sais même pas ce que c'est ^^

@prbaron : c'est a savoir que l'on doit regrouper dans le même fichier

lol lien lazy ^^
Merci à vous deux pour vos réponse