Factory in AngularJS

by mohitagrawalmca

HTML

<div ng-controller="DemoFactoryController">
 Radius : <input type="number" ng-model="area">
  <input type="button" ng-click="CalculateArea()" value="Calulate">
  <br/> Calculated area of circle: {{CalculatedArea}}
</div>

JavaScript

var MyApp = angular.module('myApp', []);
   MyApp.factory('DemoFactory', function() {
     var Factory = {};
     Factory.CircleArea = function(radius) {
       var PI = 3.14159265359;
       // calculate area of the circle
       var area = PI * radius * radius;
       return area;
     };
     return Factory;
   });
   MyApp.controller("DemoFactoryController", function($scope, DemoFactory) {
     $scope.CalculateArea = function() {
       $scope.CalculatedArea = DemoFactory.CircleArea($scope.area);
     }
   });