微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AngularJS – 在同一页面上重用不同服务的控制器

在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.

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

解决方法

创建一个注入$controller的指令,并在链接函数中使用它来在其instanciation参数的映射上实现所需的控制器:

$controller("MyController",{ $s@R_404_6433@e: s@R_404_6433@e,myService: myService})

s@R_404_6433@e是链接函数的范围变量,myService是可以使用$injector服务检索的服务.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐