How can i call a function that is in another controler (Angular js) [duplicate]

in ControllerOne

$scope.displayReport = function( status ){

   statusCkeck( status ) ;
}

statusCkeck() ; is in another controller -controllerTwo

How can i call this function from one controller to another

i tried angular.element(document.getElementById('controllerTwo')).scope().statusCheck();

But it throwing error.

Please suggest

Answers:

Answer

You should use a service instead to avoid muddying up the controllers with code that calls functions in other controllers. If you're sharing functions, just define them in a service and inject that service where needed.

angular.module('myApp', [])
  .factory('myService', function() {
    return {
      sharedFunction: function (foo, bar) {
        return foo + bar;
      }
    }
};
Answer

You can get scope:

angular.element(document.getElementById('yourControllerElementID')).scope().get()

But yourControllerElementID should be ElementID not ControlerName!

For example:

<div id="elemID" ng-controller="YourController"></div>

So elemId is id of element with YourController.

Tags

Recent Questions

Top Questions

Home Tags Terms of Service Privacy Policy DMCA Contact Us

©2020 All rights reserved.