Mam zmienną, która będzie używana przez jeden lub więcej kontrolerów, zmienionych przez usługi. W tym przypadku stworzyłem usługę, która przechowuje tę zmienną w pamięci i udostępnia ją między kontrolerami.Zmienne wiążące z usługi/fabryki do kontrolerów
Problem polega na tym, że za każdym razem, gdy zmienna ulega zmianie, zmienne w kontrolerach nie są aktualizowane w czasie rzeczywistym.
Tworzę to skrzypce, aby pomóc. http://jsfiddle.net/ncyVK/
--- Należy pamiętać, że {{countService}}
lub nigdy nie jest aktualizowany, gdy zwiększam wartość licznika.
Jak powiązać zmienną Service/Factory ze zmienną $ scope.variable w kontrolerze? Co robię źle?
Więc zasadniczo, że fabryka jest właśnie wspólny (Singleton) pojemnik do danych i funkcji na danych. Ręcznie zarządzasz/synchronizujesz dane w i poza zasięgiem $ scope? – sambomartin
@Sambomartin w prawo. Wielki artykuł [tutaj] (http://fdietz.github.io/recipes-with-angular-js/controllers/sharing-code-between-controllers-using-services.html) – user4815162342
Przekazując funkcję jako testFactory.getCount i nie wywoływanie go, i wywoływanie go w interfejsie użytkownika, do którego przypisano wartość usługi. Natomiast jeśli $ scope.countFactory = testFactory.getCount() wystarczy wywołać funkcję raz po inicjalizacji i nic nie jest związane? Więc nie zaktualizowane później, jeśli zmieni się wartość? – mtpultz