IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AngularJS Discussion :

Service best practice


Sujet :

AngularJS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Par défaut Service best practice
    Bonjour,
    voici un cas simple: j'ai besoin qu'une variable soit accessible de n'importe ou dans mon app: elle doit pouvoir etre modifié ou consulté de n'importe ou.

    Donc je l'ai mise dans un service, de maniere tres simple, et ça marche, mais est-ce la bonne maniere de faire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    .service('savedSearchesService', function() {
            var memoryCache = null;
        });
    Et si j'en est plusieurs et bien je crée un objet avec divers proprieté.
    Ensuite pour y acceder dans un controller par exemple, j'utilise:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    savedSearchesService.memoryCache
    et c'est bon j'ai accès a la valeur.

    Est-ce une manière de faire, à noter que je ne "return" rien.

  2. #2
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    J'aurai plutôt fait un service de type value :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var myService = angular.module('myService', []);
     
    myService.value('serviceName', {
      propertyName: 'value'
    });
    Et dans un contrôleur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function MyCtrl($scope, myService) {
     
      $scope.propertyName = myService.propertyName;
    };
    Il ne reste plus qu'à utiliser la valeur ou faire un binding dans la vue.


    Pour l'histoire du return dans le .service c'est normal car .service fait le return pour toi.

    A lire sur les différences entre les types de services :

    https://groups.google.com/forum/#!to...ar/hVrkvaHGOfc
    https://gist.github.com/Mithrandir0x/3639232

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/03/2014, 16h39
  2. [2012] Best Practices concernant un SID BI Self Service Virtualisé
    Par Study2007 dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 04/03/2014, 12h25
  3. Best practice winform et service
    Par FraktaL dans le forum C#
    Réponses: 11
    Dernier message: 30/09/2012, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo