Jestem nowy w angularjs. Próbuję dowiedzieć się, kiedy wykorzystać wartość vs fabryka jako usługę. Oto mój prosty kod z samouczka egghead.io:Wartość Angularjs kontra Fabryka
.value('Data', function(){
return {message:"I am data from a service"};
})
DataMessage jest powiązany z polem wprowadzania danych. Kiedy zaczynam stronę, nie ma nic w polach wejściowych. Jeśli zmienię wartość na fabryczną, w polu wejściowym pojawi się komunikat domyślny.
Oto contoller:
controller('FirstCtrl', ['$scope','Data',function($scope, Data) {
$scope.data = Data;
console.log('exiting first controller');
}])
a plik index:
<div ng-controller="FirstCtrl">
<input type="text" ng-model="data.message">
<h1>{{data.message}}</h1>
</div>
Dlaczego jest pusta strona przy użyciu wartości? Moje założenie jest takie, że wartość nie jest obliczana lub obliczana podczas uruchamiania aplikacji, gdy fabryka jest?
Ponadto, gdzie mogę znaleźć dokumentację dotyczącą $ provide? Dziękuję wam wszystkim.
Trochę niezwiązane trochę to pomogło mi w podobnej sytuacji. fabryka a usługa kontra zapewniają https://gist.github.com/Mithrandir0x/3639232. Aby zwiększyć szanse na uzyskanie lepszej odpowiedzi, byłoby pomocne, gdybyś mógł podać przykład za pośrednictwem jsFiddle lub podobnej usługi. – TheHippo
Dziękuję za przydatne łącze. –