2014-12-09 5 views
1

나는 의견 글 상자가 있으며 ngSanitize/$ sce를 사용하여 [href]를 안전한 HTML로 허용하고 싶습니다.

<span contact-highlight hightlight-value="showedText" ng-bind-html="showedText"></span> 

을 그리고 내 contactHiglight 지시어 안에 나는이있다 : 그래서 나는이 노력하고있어

contentObjectApp.directive('contactHighlight', function ($sce) { 
    return { 
     restrict: 'A', 
     scope: { hightlightValue: '=' }, 
     link: function ($scope, $element, $attrs) { 
      $scope.hightlightValue = "<h2> testing" + $sce.trustAsHtml('<a href="#">render me please</a>') + " </h2>"; 
     } 
    }; 
}); 

I 방법 만이 HREF 링크가 될 '제발 렌더링'할 수 있도록 기대하지만 항상 렌더링되기를 기대합니다. 내가 뭘 놓치고 있니? 이 작업을 수행하는 쉬운 방법이 있습니까?

답변

2

각도 1.3.7 (https://docs.angularjs.org/api/ng/service/ $ sce)의 문서에 따르면 링크 만 전달하려면 $ sce.trustAs ($ sce.URL, value_to_parse)를 사용하십시오.

<span ng-bind-html="value_to_parse | asHtml"> </span> 
: 당신이로 사용할 수 있습니다보기에 그런

angular.module('App', []) 
.filter('asHtml', function($sce) { 
    return function(input) { 
    return $sce.trustAs($sce.URL, input); 
    }; 
}) 

:

나는 필터를 사용하는 것이 좋습니다