Bir fabrika Ne?AngularJS :
Angular.js
Bir sürü iş yapıyorum ve genel olarak ilginç ve güçlü bir çerçeve olduğunu düşünüyorum.
Hizmetleri Fabrikalar vs vs vs Sağlayıcıları Değerleri üzerine tartışmalar bir sürü var biliyorum, ama yine de Factory
bir şey hakkında çok karıştı.
Fabrika aşağıdaki gibi diğer StackOverflow tartışmalara tanımlanmıştır:
Fabrikalar
Kullanımı: module.factory( 'factoryName', function );
Sonuç: fonksiyon başvuru modülü.geçti çağırma tarafından döndürülen değeri verilecektir enjekte edilebilir bir argüman olarak factoryName bildirirken fabrika.
Kavramak çok zor bu açıklama buldum ve bir fabrika ne benim anlayış artırmak değil.
Kimse tam olarak Factory
ve*,* 6*,* 5 veya başka bir yerine kullanmanız gerekir neden hakkında paylaşmak için açıklamalar veya gerçek hayattan örnekler herhangi olurdu?
Güncelleme
7**tutan bir referansherhangi birnesne.
8**bir fonksiyonudurherhangi bir dönernesne
9**bir fonksiyonudurherhangi bir dönerişlevi
-Vay be-
CEVAP
Anladığım kadarıyla hemen hemen hepsi aynı. Büyük farklar karmaşıklıkları vardır. Sağlayıcıları çalışma zamanında yapılandırılabilir, fabrikalar biraz daha sağlam ve hizmetleri en basit biçimidir.
Bu soru Service vs provider vs factory Check out
Ayrıca gist bu ince farkları anlamak için yararlı olabilir.
Kaynak: https://groups.google.com/forum/#!topic/angular/hVrkvaHGOfc
jsFiddle: http://jsfiddle.net/pkozlowski_opensource/PxdSP/14/
yazar:Pawel Kozlowski
var myApp = angular.module('myApp', []);
//service style, probably the simplest one
myApp.service('helloWorldFromService', function() {
this.sayHello = function() {
return "Hello, World!";
};
});
//factory style, more involved but more sophisticated
myApp.factory('helloWorldFromFactory', function() {
return {
sayHello: function() {
return "Hello, World!";
}
};
});
//provider style, full blown, configurable version
myApp.provider('helloWorld', function() {
// In the provider function, you cannot inject any
// service or factory. This can only be done at the
// "$get" method.
this.name = 'Default';
this.$get = function() {
var name = this.name;
return {
sayHello: function() {
return "Hello, " name "!";
}
};
};
this.setName = function(name) {
this.name = name;
};
});
//hey, we can configure a provider!
myApp.config(function(helloWorldProvider){
helloWorldProvider.setName('World');
});
function MyCtrl($scope, helloWorld, helloWorldFromFactory, helloWorldFromService) {
$scope.hellos = [
helloWorld.sayHello(),
helloWorldFromFactory.sayHello(),
helloWorldFromService.sayHello()];
}
AngularJS - birim bağımlılıkları olan ...
AngularJS: fabrika $http.JSON dosya al...
AngularJS : Servis sağlayıcı vs vs fab...
AngularJS : servisi kullanmak için ne ...
Dışarıda js fonksiyonu erişim kapsamı ...