AngularJS 控制器中的重构功能

Refactoring functions in controllers in AngularJS

我想我应该将一些功能从 AngularJs 中的控制器移到外部 "container",但是在哪里?要服务吗?

例如:

.controller('ctrl1', function() {
    $scope.submit = function () {
        ... some code here ...
    });
});

.controller('ctrl2', function() {
    $scope.submit = function () {
        ... the same code here as a function submit of ctrl1 ...
    });
});

感谢您的宝贵时间。

您可以为此使用工厂:

.factory('someService', function(){
       return {
        submit: function(){
           var some_data='Text';
           return some_data;
        }  

    }
    });

    .controller('ctrl1', function(someService){
       var text=someService.submit();
    });

    .controller('ctrl2', function(someService){
       var text = someService.submit();
    });

这是工作Plunker