2017-10-23 19 views
0

지금까지 getLine()getAllLines() 메쏘드를 찾았으나, 지정된 행의 문자열 내용을 반환합니다.에이스 편집기에서 행 범위에 대한 dom 요소에 대한 참조를 얻는 방법?

let line = this.editor.session.getLine(30); 
let lines = this.editor.session.doc.getAllLines() 

특정 줄의 DOM 요소는 어떻게 요청할 수 있습니까? 줄 집합을 강조 표시하고 싶지만 selectionRange을 만들지 않으려면 선택 범위를 다른 항목에 대해 무료로 지정해야합니다.

배경색을 변경하는 CSS 클래스를 적용합니다. 불행히도이 목적을 위해 하이 잭 (highjack) 할 수있는 <div class="ace_line_group"의 id 클래스는 없습니다. 또한 내가 찾고있는 것들을 찾을 때까지 모든 라인을 반복하는 어수선한 정규식을 피하고 싶습니다.

답변

0

음 ... 다행히도, 더 많은 인터넷 검색 결과를 찾았습니다. 그것은 또한 webpack으로 잘 놀고 있습니다.

var ace = require('brace'); 
    var Range = ace.acequire('ace/range').Range; 
    editor.session.addMarker(
     new Range(1, 0, 15, 0), "ace_active-line", "fullLine", true 
    ); 

그러나 해당 지역에 대한 툴팁을 플로팅하려면 dom 참조를 얻는 방법이 필요합니다.