angularjs - потерянное значение изолированной области видимости в другой функции ссылки директивы

Я работаю в угловой директиве, не могу получить доступ к значению изолированного объема в другой функции ссылки директивы.

Код:- Графическая директива

var graphic = function(sequence) {
    var linker = function(scope, element, attrs) {
        //NOTE: DO NOT CHANGE THE NAME OF THE VARIABLES id AND version. 
        //They should be defined as imageSrcFormat is javascript code that references them.
        var id = sequence.currentItem.contentItemId;
        var version = sequence.currentItem.version;
        var basePath = sequence.imageLocation.basePath;
        var imageSrcFormat = sequence.imageLocation.format;
        scope.imageSrc = basePath + eval(imageSrcFormat) + scope.graphicRef;
    };
    return {
        restrict: 'E',
        transclude: false,
        template: '<img atom-src={{::imageSrc}} height={{::height}} width={{::width}} alt={{::alt}}></img>',
        replace: true,
        scope: {
            graphicRef: "@",
            height: "@",
            width: "@",
            alt: "@"
        },
        link: linker
    };
};
graphic.$inject = ['sequence'];
angular.module('atom').directive('graphic', graphic);

директива termDefinitionLink

var termDefinitionLink = function() {
  var linker = function(scope, element, attrs) {
    var elementText = $(element).find("div")[0].innerHTML;
    //$(element).find("div").remove();
    element.qtip({
      show: 'click',
      hide: 'click unfocus',
      content: {
        title: {
          button: true
        },
        text: elementText
      },
      position: {
        my: 'bottom left',
        at: 'top center',
        adjust: {
          resize: true,
          scroll: true,
          method: 'shift'
        }
      },
      style: {
        classes: 'explanations-popover-container'
      },
      target: $(this)
    });
    $('*').scroll(function() {
      element.qtip('reposition');
    });
  };
  return {
    restrict: 'E',
    transclude: true,
    template: '<a class="explanationBold linkButton"><span ng-transclude></span><img src="./modules/app/shell/usmle/directives/inlineElements/images/arrow_full_upperright_32.png"></img></a>',
    replace: true,
    link: linker
  };
};

angular.module('atom').directive('termdefinitionlink', termDefinitionLink);

Здесь переменная elementText, которая содержит графические теги изображения директивы, но без значения контекста.

Результат получаю

<img atom-src="{{::imageSrc}}" height="{{::height}}" width="{{::width}}" alt="hand with pulse sensor {{::alt}}" graphic-ref="ncq0961.gif" class="ng-scope ng-isolate-scope">

Ожидаемый результат в переменной elementText

<img atom-src="https://qa-xxx:443/content/media/36/342736.0.ncq0961.gif" height="" width=""  alt="hand with pulse sensor " graphic-ref="ncq0961.gif" class="ng-scope ng-isolate-scope" src="https://xxx:443/content/media/36/342736.0.ncq0961.gif">

Может ли кто-нибудь помочь мне в этом же, заранее спасибо

0 ответов

Другие вопросы по тегам