关注angular.ui
模态example会收到三个参数。虽然$ scope是注入变量,但我们如何得到另外两个$modal
和$log
。如果它们是自动注入的,那么如何才能了解所有可能的注入参数?
angular.module('ui.bootstrap.demo')
.controller('ModalDemoCtrl',
function ($scope, $modal, $log) {
谢谢!
答案 0 :(得分:1)
Angular's documentation for its dependency injection is pretty good
基本上Angular实际上会查看函数定义以进行注入。这不是首先注入$scope
,而是因为您使用名称$scope
并且该服务存在而注入了$scope
。与其他两个相同。
您可以注入模块可用的任何服务。 Services that ship with Angular itself (always available) are listed here,但您可以定义自己的服务,并包含定义服务的其他模块。
还有其他依赖注入方法可以提供更多的清晰度:
("symbol", ["$scope", function (anotherName) {
在上面的示例中,anotherName
实际上是该函数上下文中的$scope
服务(尽管我建议不要更改服务名称)。
答案 1 :(得分:0)
它们确实是自动注入的。 Over here您可以找到有关其实际工作原理的更多信息,并查看一些通常可用于注射的参数。既然您可以制作自己的服务,指令等,我认为您不可能在任何地方找到详尽的清单。
事实上,例如$ modal参数并不是一个神奇的角度,但实际上是一个角度ui团队碰巧写的服务。