6

在 AngularJS 中,我可以为页面上的一个部分定义一个控制器。我可以有一个带有多控制器的页面。

<div ng-controller="ThisSectionController">
    .... 

</div>
<div ng-controller="ThatSectionController">
    ....
</div>

我可以在使用 ng-init 发送不同配置的同时重用控制器

<div ng-controller="MyController" ng-init="i = 1">  
    {{ i }}
</div>
<div ng-controller="MyController" ng-init="i =2" >
    {{ i }}
</div>

这将按照您的预期输出 1 和 2。

我的问题是 - 如何重用控制器并将其配置为使用不同的服务?

4

1 回答 1

2

创建一个注入$controller并在链接函数中使用它的指令,以在其实例化参数的映射上实例化您想要的控制器:

$controller("MyController", { $scope: scope, myService: myService})

scope是链接函数的范围变量,myService是您可以使用服务检索的$injector服务。

于 2013-05-30T07:26:18.830 回答