Z kontrolera AngularJS, jak mogę rozwiązać inną funkcję kontrolera zdefiniowaną w module (dynamiczny kontroler ng)?

Samoczynne skrzypce:http://jsfiddle.net/5FG2n/6/

Muszę dynamicznie wybrać kontroler, który ma być używany w czasie wykonywania na podstawie jego nazwy jako łańcucha. Ciąg zostanie odczytany z obiektu konfiguracyjnego.

W poniższym kodzie mamInnerCtrlAsLocalVariable przypisany do$scope.dynamicCtrl. Jak zamiast tego przypisaćInnerCtrlFromModule do nieruchomości?

Widok:

<div ng-app='app' ng-controller='OuterCtrl'>
    <div ng-controller='dynamicCtrl'>
        {{message}}
    </div>
</div>

JS:

var InnerCtrlAsLocalVariable = ['$scope',
    function($scope) {
        $scope.message = 'from controller as local variable - do not want'
    }
];

angular.module('app', []) 

    .controller('OuterCtrl', ['$scope', 

        function($scope) {
            // Instead of doing this...
            $scope.dynamicCtrl = InnerCtrlAsLocalVariable;

            // ...I want to do something like this:
            // $scope.dynamicCtrl = resolveCtrl('InnerCtrlFromModule');                                               
        }
    ])

    .controller('InnerCtrlFromModule', ['$scope',
        function($scope) {
            $scope.message = 'from controller defined in module - want';
        }
    ]);

questionAnswers(2)

yourAnswerToTheQuestion