2016-12-27 3 views
0

내 응용 프로그램에서 ui-ace 지시문을 사용하고 있습니다. 에이스 텍스트 상자에서 선택한 텍스트를 강조 표시하는 방법은 무엇입니까?에이스 편집기에서 선택한 텍스트 강조 표시

이것은 .js의 내 에이스 코드입니다.

$scope.aceLoaded = function(_editor) { 
     // Editor part 
     var _session = _editor.getSession(); 

     _session.setUseWrapMode(true); 
     _session.setWrapLimitRange(); 
     var _renderer = _editor.renderer; 
     globalEditor = _editor; 
     _editor.$blockScrolling = Infinity 
     _renderer.setShowGutter(false);  
    }; 

그리고 이것은 HTML의 모습입니다.

<div ui-ace="{ 
            onLoad : aceLoaded, 
            onChange: aceChanged, 
            showGutter: false, 
            mode:'javascript', 

            require: ['ace/ext/language_tools'], 
            advanced: { 
            enableSnippets: true, 
            enableBasicAutocompletion: true, 
            enableLiveAutocompletion: true 
            } 
           }" class= "ace-chrome ace-editor div-width div-heights" ng-model="campaign.rule" id="rule"> 

답변

0

.. 다음과 같은 사용자 정의 필터를 생성

angular.module("filters").filter('highlight', ['$sce', 
     function ($sce) { 
      return function (text, phrase) { 
       if (phrase) { 
        text = text.replace(new RegExp('(' + phrase + ')', 'gi'), '<span class="highlighted">$1</span>') 
        return text; 
       } 
      }; 
     } 
]); 

<p ng-bind="data| limitTo:20 | highlight:columnFilterSearchInput"></p>