angular-factory-service

来源:互联网 发布:潍坊行知中学新校区 编辑:程序博客网 时间:2024/05/16 09:54
****AngularJS支持使用服务的体系结构“关注点分离”的概念。服务是JavaScript函数,并负责只做一个特定的任务。这也使得他们即维护和测试的单独实体。控制器,过滤器可以调用它们作为需求的基础。服务使用AngularJS的依赖注入机制注入正常。

AngularJS提供例如许多内在的服务,如:http,route, window,location等。每个服务负责例如一个特定的任务,httpAJAXroute用来定义路由信息等。内置的服务总是前缀$符号。
有两种方法来创建服务*。
工厂
服务
使用工厂方法*

body部分:

<h2>AngularJS Sample Application</h2><div ng-app="mainApp" ng-controller="CalcController">  <p>Enter a number: <input type="number" ng-model="number" />    <button ng-click="square()">X<sup>2</sup></button>  <p>Result: {{result}}</p></div>

js:

<script src="http://code.angularjs.org/angular-1.0.1.min.js"></script><script>  var mainApp = angular.module("mainApp", []);  mainApp.factory('MathService', function() {    var factory = {};    factory.multiply = function(a, b) {      return a * b    }    return factory;  });  mainApp.service('CalcService', function(MathService){    this.square = function(a) {      return MathService.multiply(a,a);    }  });  mainApp.controller('CalcController', function($scope, CalcService) {    $scope.square = function() {      $scope.result = CalcService.square($scope.number);    }  });  </script>
原创粉丝点击