ben

OMÜ , Bilgisayar Mühendisliği, 13'

31 Ekim 2018 Çarşamba

Factory , Provider


Factory Servisi




Servis Tanımlama



app.factory(‘factoryService’, function() {
  return {
        hello: function(name) {
             return name;
        }
});



Dependency Olarak Controller’a tanımla



app.controller('CtrlName', function ($scope, factoryService)
});




<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="utf-8" />
<title>Sutuna Göre Sırala</title>
<script src="https://code.angularjs.org/1.5.0/angular.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="ngKontrol">
  <b>Sayı 1:</b> <input type="number" ng-model="sayi1"/><br>
  <b>Sayı 2:</b> <input type="number" ng-model="sayi2"/><br>
  <b>Sonuç:</b> {{sonuc}}<br/><br/>
  <button ng-click="toplaF()">Sayıları Topla</button>
</div>
<script type="text/javascript">
var hesapServis = angular.module("ngHesapServis", [])
    .factory("hesap", function(){
      var obj = {};
      obj.topla = function(s1, s2){
        return s1 + s2;
      };
      return obj;
    });
var uygulama = angular.module("myApp", ["ngHesapServis"]);
  uygulama.controller("ngKontrol", function($scope, hesap){
    $scope.toplaF = function(){
      $scope.sonuc = hesap.topla($scope.sayi1, $scope.sayi2);
    };
  });
</script>
</body>
</html>



Provider Servisi

En gelişmiş ve en işlevsel servislerdir.
Factory’lerden farklı olarak konfigürasyon için kullanılıyorlar

ÖRNEK:


<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="utf-8" />
<title>Sutuna Göre Sırala</title>
<script src="https://code.angularjs.org/1.5.0/angular.js"></script>
</head>
<body>
<div ng-app="ngUygulamam" ng-controller="ngKontrol">
{{icerik}}
</div>
<script type="text/javascript">
var uygulama = angular.module("myApp", []);
uygulama.controller('ngKontrol', function($scope,filtreService){
$scope.icerik=filtreService.filtrele("deneme.txt");
});
uygulama.service('filtreService',function($http){
this.filtrele=function(dosyayolu){
$http.get(dosyayolu).then(function(response) {
return response.data.replace("angular","***").replace("sql","***").replace("java","***").replace("oracle","***");
});
}
})
</script>
</body>
</html>


Hiç yorum yok: