Мой шаблон AngularJS содержит некоторый собственный синтаксис HTML, например:
<su-label tooltip="{{field.su_documentation}}">{{field.su_name}}</su-label>
Я создал директиву для его обработки:
.directive('suLabel', function() {
  return {
    restrict: 'E',
    replace: true,
    transclude: true,
    scope: {
      title: '@tooltip'
    },
    template: '<label><a href="#" rel="tooltip" title="{{title}}" data-placement="right" ng-transclude></a></label>',
    link: function(scope, element, attrs) {
      if (attrs.tooltip) {
        element.addClass('tooltip-title');
      }
    },
  }
})
Все работает отлично, за исключением выражения attrs.tooltip, которое всегда возвращает undefined, даже если атрибут tooltip отображается с консоли Google Chrome JavaScript при выполнении console.log(attrs).
Любое предложение?
ОБНОВЛЕНИЕ: решение было предложено Артемом. Он состоял в этом:
link: function(scope, element, attrs) {
  attrs.$observe('tooltip', function(value) {
    if (value) {
      element.addClass('tooltip-title');
    }
  });
}
AngularJS + stackoverflow = блаженство
