J'ai une idée pour mon application AngularJS et je suis curieux de savoir si la communauté AngularJS considérerait qu'il est acceptable de procéder de cette façon. En bref, je me connecte à une API de données et j'affiche mes résultats sur la page.
J'ai créé un service AngularJS qui crée un magasin de données sur $rootScope.DataStore
. J'ai également une méthode de service qui met à jour le DataStore avec les données renvoyées par un point de terminaison de l'API. Si je demande le point de terminaison "products" de l'API à l'intérieur de mon contrôleur avec la méthode DataStore.update('products')
, ce qui permettrait de mettre à jour $rootScope.DataStore.products
avec les données de mon produit.
Maintenant, dans la vue/partiel, tout ce que j'ai à faire, c'est de dire ng-repeat="product in DataStore.products"
pour afficher mes données, et ce quelle que soit la portée du contrôleur dans lequel je me trouve. Par essence, mon DataStore est donc ma seule source de vérité.
J'ai l'impression que cette méthode me permet de bénéficier d'une sémantique facile à suivre et d'un codage minimal du contrôleur. Ainsi, chaque fois que le DataStore est mis à jour, tout ce qui est lié au DataStore est également mis à jour.
Cela ne risque-t-il pas d'alourdir la charge de travail de l $rootScope
ou s'agit-il simplement d'une façon étrange de procéder ? Ou est-ce une façon totalement géniale ? :) Tous les commentaires sont les bienvenus.