2014-09-18 2 views
0

В книге AngularJS от O'Reilly есть глава о директивах. В контроллерах разделе следующая информация:AngularJS: все доступные параметры контроллера

controller: function controllerConstructor($scope, $element, $attrs, $transclude)

Эта функция контроллера зависимости впрыскивается, поэтому параметры, перечисленные здесь, в то время как потенциально полезными, являются необязательными, они могут быть перечислены в любом порядке. Они также являются только подмножеством доступных услуг.

Можно ли найти весь набор доступных услуг? То, что я точно ищу, - это способ получить контроллеры внутри этого контроллера. То есть

myApp.directive('dirName',function() { 
... 
    require: '^parentDir', 
    ... 
    controller: function() { 
    //which service name in function definition I should include to get to parentDir controller? 
    } 
+0

Ваши вопросы, кажется, не связаны. Вы запрашиваете список всех Угловых сервисов, а затем также как требовать от контроллеров? – Ian

+0

В дополнение к комментарию Яна, возможно, изложите свою точную проблему. Похоже, вы пытаетесь получить доступ к функциям на родительском контроллере? – sma

ответ

0

В AngularJS вы не вводите контроллер в другой контроллер. По крайней мере, я этого никогда не видел.

Услуги - это то, что вы вводите в Угловое. Они внедряются в контроллеры, фильтры, директивы, и вы можете вводить услуги в службы.

Услуги по умолчанию, доступные для инъекций, являются частью ng core module (их список доступен по ссылке).

Но вы также можете включить другие модули в свой проект, и больше услуг станет для вас доступным.

+0

Спасибо! Это было полезно. – user1795707

+0

Рад, что помогло. Я также просто вспомнил, что вы можете вводить поставщиков в блок конфигурации, но это не должно путать, поскольку в модуле Angular есть только один блок конфигурации. –