Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angularjs中基于某些条件实现两个独立的实现_Javascript_Angularjs - Fatal编程技术网

Javascript 如何在angularjs中基于某些条件实现两个独立的实现

Javascript 如何在angularjs中基于某些条件实现两个独立的实现,javascript,angularjs,Javascript,Angularjs,我的情况如下 function abc(){ if(someCondition){ // Implemention 1 } else { // Implemention 2 } } 这种情况在整个应用程序中都存在,但我希望我的代码是干净的。 我想在c#中做一些类似的事情,通过依赖注入,我可以在运行时的两个类之间进行选择,并在Class1和Class2之间切换,Class1和Class2分别使用“Implementation 1”和“Implementatio

我的情况如下

function abc(){
   if(someCondition){

    // Implemention 1

   } else {

    // Implemention 2

}
}

这种情况在整个应用程序中都存在,但我希望我的代码是干净的。 我想在c#中做一些类似的事情,通过依赖注入,我可以在运行时的两个类之间进行选择,并在Class1和Class2之间切换,Class1和Class2分别使用“Implementation 1”和“Implementation 2”。我使用的是angularjs 1.x

例如: 我在“实施1”中有大约20个控制器和服务,在“实施2”中有同样的20个控制器和服务。你能帮我设计我的应用程序吗?如果我的应用程序处于“模式1”,那么它应该使用“实现1”;如果它在运行时切换到“模式2”,那么它应该使用“实现2”


请给出一些建议。

您当然可以使用$injector来完成,下面是代码:

angular.module('myApp').controller('myCtrl', 
    ['$injector', '$scope',
    function($injector, $scope) {
        var service;
        if (something) {
            service = $injector.get('myService1');
        }else{
            service = $injector.get('myService2');
        }
    });

您当然可以使用$injector来完成,下面是代码:

angular.module('myApp').controller('myCtrl', 
    ['$injector', '$scope',
    function($injector, $scope) {
        var service;
        if (something) {
            service = $injector.get('myService1');
        }else{
            service = $injector.get('myService2');
        }
    });

谢谢你的回复。我在“实施1”中有大约20个控制器和服务,在“实施2”中有同样的20个控制器和服务。请您帮助我如何设计我的应用程序,以便如果我的应用程序处于“模式1”,那么它应该使用“实现1”,并且在运行时,如果它切换到“模式2”,那么它应该使用“实现2”。感谢您的回复。我在“实施1”中有大约20个控制器和服务,在“实施2”中有同样的20个控制器和服务。你能帮我设计我的应用程序吗?如果我的应用程序处于“模式1”,那么它应该使用“实现1”;如果它在运行时切换到“模式2”,那么它应该使用“实现2”