aboutsummaryrefslogtreecommitdiffstats
path: root/src/service/controller.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/service/controller.js')
-rw-r--r--src/service/controller.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/service/controller.js b/src/service/controller.js
new file mode 100644
index 00000000..22fb3b02
--- /dev/null
+++ b/src/service/controller.js
@@ -0,0 +1,26 @@
+'use strict';
+
+function $ControllerProvider() {
+ this.$get = ['$injector', function($injector) {
+
+ /**
+ * @ngdoc function
+ * @name angular.module.ng.$controller
+ * @requires $injector
+ *
+ * @param {Function} Class Constructor function of a controller to instantiate.
+ * @param {Object} scope Related scope.
+ * @return {Object} Instance of given controller.
+ *
+ * @description
+ * `$controller` service is responsible for instantiating controllers.
+ *
+ * It's just simple call to {@link angular.module.AUTO.$injector $injector}, but extracted into
+ * a service, so that one can override this service with {@link https://gist.github.com/1649788
+ * BC version}.
+ */
+ return function(Class, scope) {
+ return $injector.instantiate(Class, {$scope: scope});
+ };
+ }];
+}