Ho una variabile che verrà utilizzata da uno o più controllori, modificata dai servizi. In questo caso, ho creato un servizio che mantiene questa variabile in memoria e la condivide tra i controller.Variabili di rilegatura da servizio/fabbrica a controllori
Il problema è: ogni volta che la variabile cambia, le variabili nei controller non vengono aggiornate in tempo reale.
Ho creato questo violino per aiutare. http://jsfiddle.net/ncyVK/
--- Si noti che la {{countService}}
o {{countFactory}}
viene mai aggiornata quando ho incrementare il valore di conteggio.
Come si può associare la variabile Servizio/Fabbrica a $ scope.variable nel Controller? Cosa sto facendo di sbagliato?
Quindi, in sostanza, la fabbrica è solo un condiviso (Singleton) contenitore per i dati e le funzioni sui dati. Gestisci/sincronizzi manualmente i dati dentro e fuori l'ambito $? – sambomartin
@sambomartin right. Ottimo articolo [qui] (http://fdietz.github.io/recipes-with-angular-js/controllers/sharing-code-between-controllers-using-services.html) – user4815162342
Quindi passando la funzione come testFactory.getCount e non invocandolo, e invocandolo nell'interfaccia utente hai vincolato il valore dei servizi. Considerando che se $ scope.countFactory = testFactory.getCount() dovresti invocare la funzione una sola volta quando inizializzata e nulla è vincolato? Quindi non aggiornato più tardi se il valore cambia? – mtpultz