Доступ к переменной $rootScope в шаблоне директивы?

#angularjs

#angularjs

Вопрос:

У меня есть переменная с именем, state которая находится в $rootScope , и я хочу получить доступ к этой переменной в шаблоне left-widget.html моей директивы leftWidget

 app.directive('leftWidget', function ($rootScope) {
    'use strict';
    return{
        restrict: 'E',
        replace: true,
        scope: {
            title:'@',
            name:'@'
        },
        templateUrl: '/templates/left-widget.html
    }
});
  

Я не могу найти способ сделать это… Есть помощь? Спасибо

РЕДАКТИРОВАТЬ: Решил проблему с помощью функции связывания, подобной этой:

 link: function($scope, elem, attrs){
    $scope.state = $rootScope.state;
}
  

Комментарии:

1. Использовать контроллер директив ( docs.angularjs.org/guide /… ) и $scope.state = $rootScope.state , затем получить доступ state к шаблону.

2. я решил это с помощью функции связывания ‘link: function ($scope, elem, attrs) { $scope.state = $ rootScope.state; }’

3. @SergiuParaschiv controller больше предназначен для предоставления API другим директивам. link в данном случае более уместно.

4. Я согласен. Документы контроллера было легче найти, хотя они и направили его в правильном направлении 🙂